CSSまたはJavaScriptを使用してHTML要素をアニメーション化することは、ライブラリの助けのおかげで、今日では多かれ少なかれ簡単な作業です。ただし、完全な既存の要素のみをアニメーションすることができます。
これは、段落で一語をアニメーション化したい場合は、単語を単一の要素(スパンなど)に包み、それに応じて配置する必要があることを意味します。このような1つまたは2つのスパン要素しかない場合、これは大きな問題ではありませんが、すべてのキャラクターを段落でアニメーション化したい場合はどうでしょうか。各文字について、スパンを作成する必要があります。これにより、多くの追加マークアップが追加され、テキストの編集が難しくなります。これがBlast.jsが存在する理由です。
キーポイント
前述のように、Blast.jsでは、文字、単語、または文の要素を作成することができますが、ライブラリはこれらのオプションに限定されません。次のセクションでは、いくつかのオプションを紹介するためのいくつかの具体的な例を示します。表示されるオプションのリストは、利用可能なオプションの完全なリストがプロジェクトのWebサイトにあります。
最初のテキストをアニメーション化します
この最初の例では、タイトルをアニメーション化し、キャラクターごとに適切なキャラクターに移動します。必要な唯一のHTMLコードは次のとおりですタイトルをアニメーション化することができます。この例では、$( 'h1')を使用して要素を見つけるだけで十分ですが、あなたの場合、適切なセレクターを使用して要素を見つけます。
<h1>></h1>Hello World!>
blast.jsは、jQueryオブジェクトに新しいメソッドを提供します:.blast()。この最初の例では、1つのオプションDelimiterのみを使用します。「キャラクター」は、キャラクターごとにタイトルをアニメーション化したいことを示します。
パラメーターを含めない場合、デフォルトの値「単語」(「文字」ではなく使用されます。 >
この方法で、私たちのシンプルなH1要素がアニメーション化され、次のDOMが生成されます。<h1>></h1>Hello World!>
単語間のスペースが保存されており、スパンにカプセル化されていないことに注意してください。
$(function() { // 动画代码 });
生成された要素を取得すると便利ですが、常にではありません。したがって、生成された要素の代わりに親要素(アニメーション化している主な要素)を返すように.blast()メソッドが必要な場合は、別のオプションを使用できます:returngenerated。デフォルトでは、Trueに設定されています。
$('h1').blast({ delimiter: 'character' });
.each()メソッドは、jQueryオブジェクトに保存されている各要素の関数を実行します。以下は、コメントで説明する機能です。
<h1> class="blast-root"></h1> class="blast">H> class="blast">e> class="blast">l> class="blast">l> class="blast">o> class="blast">W> class="blast">o> class="blast">r> class="blast">l> class="blast">d> class="blast">!> >
コード説明:最初に、$(this)を使用して現在の要素(この場合は現在の文字)を取得します。相対位置をゼロに初期化し、最後にこの位置をアニメーション化します。
コードの対応するコメントに示されているように、.delay()メソッドは、i * 45を使用して定義されたミリ秒の数の後にアニメーションを開始します。 。最初のキャラクターの場合、私は0に等しくなるため、アニメーションはすぐに始まり、次に1に等しくなり、2番目の文字は45ミリ秒後にアニメーション化されます。
var chars = $('h1').blast({ delimiter: 'character' });
パッケージング要素を選択
デフォルトでは、スパン要素が作成されます。これは通常、必要なものです。しかし、時には、強い、EM、さらにはDivやPなどの他の要素を使用したい場合があります。 Blast.jsでは、これが可能です。
これを行うには、次の例では、各単語がランダムな色でスタイルとされ、EM要素にカプセル化される段落を作成します。
この新しい関数は、MINとMAXの間のランダムな整数を与え、関数の引数として渡されます。
今、段落を色付けする準備ができました。まず、Delimiter 'Word」を使用して段落をアニメーション化します。新しいオプションを追加しました。タグを追加しました。これにより、blast.jsが要素を生成するために使用したいタグを示すことができます。デフォルトの「スパン」の代わりに「em」に設定します。
<h1>></h1>Hello World!>
これで、すべての単語がEMタグにカプセル化されています。各タグについて、jQueryの.css()メソッドとカスタムrand()関数を使用して、新しい色を定義します。
$(function() { // 动画代码 });
これを行うには、false値を.blast()メソッドに割り当てることができます。これにより、この方法を使用した以前の呼び出しによって追加されたすべてのタグが削除されることをBlast.jsに伝えます。
この例を以下のライブバージョンで表示できます。ページに表示されている既存の単語の1つを入力して、効果を確認してみてください。
blast.js
で検索しますデモンストレーションについては、入力を使用してフォームを作成し、ボタンを送信します。ユーザーは、特定の段落で検索するために入力内の単語を示し、その後、Blast.jsは検索された用語をSPAN要素にカプセル化します。
フォームの送信イベントを使用してこれを行います。
$('h1').blast({ delimiter: 'character' });
directive e.preventdefault();
<h1> class="blast-root"></h1> class="blast">H> class="blast">e> class="blast">l> class="blast">l> class="blast">o> class="blast">W> class="blast">o> class="blast">r> class="blast">l> class="blast">d> class="blast">!> >
正しいセレクターを使用して段落を取得してから、False値を初めて適用します。このようにして、ユーザーが以前に他の検索を実行した場合、これらの検索がクリアされます。
次に、.blast()メソッドを再度使用します。今回は、検索に必要な用語です。これを行うには、検索オプションを使用して入力値を提供します。他の2つのオプションは必須ではありませんが、それらの存在を示したいと思います。
カスタムクラスオプションを使用すると、生成された要素に独自のクラス名を追加できます。前の例で生成された要素を見ると、それらがすべて爆発クラスを持っていることが間違いなくわかります。 CustomClassを使用して、1つ以上のクラスを追加できます。
GenerateIndexidオプションはブール値です。 Trueに設定すると、生成された各要素にIDが追加されます。動作するには、CustomClassオプションが必要です。ここでは、クラス検索を選択します。これにより、最初の生成された要素にはID Search-1、2番目の要素にはSearch-2などがあります。
例を有用にするには、生成された要素を強調表示するためにCSSにいくつかのルールを追加する必要があります。たとえば、次のルールを適用できます。
この例を以下のライブバージョンで表示できます。ページに表示されている既存の単語の1つを入力して、効果を確認してみてください。
var chars = $('h1').blast({ delimiter: 'character' });
blast.jsの仕組みを理解した後、これで答えるべき重要な質問があります。 .blast()メソッドをコンテナに適用するため、このコンテナにテキストノード以外の要素が含まれている場合はどうなりますか?たとえば、爆発を次の段落に適用した場合はどうなりますか?
<h1>></h1>Hello World!>
blast.jsはDOMツリーを破壊しません。この場合、既存のスパン要素は削除されず、新しいスパン要素(ブラストクラスを使用)が作成されます。上記の段落で$( 'p')。blast()を実行することにより、次の結果を生成します。
$(function() { // 动画代码 });
.blast()メソッドを段落に適用し、デリミッターオプションを「単語」に設定するとします。同じ方法を再度適用すると、以前に生成された要素が削除され、新しい要素を作成する前に削除されます。セパレーターの代わりに検索を使用する新しい呼び出しに当てはまります。
ただし、用語を検索して.blast()メソッドを再度呼び出して新しい用語を検索すると、古い検索は削除されません。前のセクションの最後の例では、.blast(false)コールを削除してみてください。この場合、新しい検索が強調表示されますが、古い検索も強調表示されます。
とにかく生成された要素をカスタマイズする他のオプションを見つけることができます。 ARIAプロパティを無効にすることもできます。
創造的な方法でそれを使用する方法についてのアイデアがある場合、またはこのツールまたは他のツールを使用してテキストをアニメーション化した場合は、ディスカッションでお気軽にお知らせください。
Blast.jsを使用してテキストをアニメーション化する
いいえ、blast.jsはjqueryプラグインであるため、jqueryが機能する必要があります。 blast.jsを含める前に、プロジェクトにjqueryを含める必要があります。 blast.jsでカスタムデリミッターを使用するには、正規表現を.blast()メソッドに渡すことができます。正規表現は、セパレーターとして使用する文字と一致する必要があります。 blast.jsアニメーションが機能しない場合、いくつかの理由があるかもしれません。まず、プロジェクトにjqueryとblast.jsを含めるようにしてください。次に、.blast()メソッドを正しく使用するかどうかを確認します。第三に、CSSまたはjQueryアニメーションコードが正しいかどうかを確認してください。 はい、blast.jsを使用してHTML要素をアニメーション化できます。要素セパレーターを使用してHTMLを個々の要素に分解し、CSSまたはjQueryを使用してそれらをアニメーション化できます。 blast.jsアニメーションの速度は、blast.js自体ではなく、CSSまたはjQueryアニメーションコードによって制御されます。アニメーションコードの持続時間パラメーターを変更して、速度を調整できます。 はい、他のJavaScriptライブラリでblast.jsを使用できます。ただし、blast.jsはjqueryプラグインであるため、プロジェクトにjqueryを含める必要があります。 テキストからblast.js効果を削除するには、.unblast()メソッドを使用できます。このメソッドは、テキストを元の状態に復元し、すべてのBlast.js効果を削除します。
プロジェクトにblast.jsをインストールするには、npmまたはbowerを使用できます。 NPMを使用する場合は、Command NPMインストールBlast-Textを実行してインストールできます。 Bowerを使用する場合、コマンドはBower Install Blast-Textです。インストール後、スクリプトタグを使用してHTMLファイルに含めることができます。 jqueryはjqueryプラグインであるため、jqueryを含めることを忘れないでください。
blast.jsの別のセパレーターは何ですか?
blast.jsを使用してテキストをアニメーション化する方法は?
jqueryなしでblast.jsを使用できますか?
blast.jsでカスタムデリミターを使用するにはどうすればよいですか?
なぜ私のblast.jsアニメーションが機能しないのですか?
blast.jsを使用してHTML要素をアニメーション化できますか?
blast.jsアニメーションの速度を制御する方法は?
他のJavaScriptライブラリでblast.jsを使用できますか?
私のテキストからblast.js効果を削除する方法は?
以上がblast.jsでテキストをアニメーション化しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。