目次
デフォルト設定
stop()method
isrunning()Method
ホームページ ウェブフロントエンド jsチュートリアル jQueryで点滅するテキスト効果を作成します

jQueryで点滅するテキスト効果を作成します

Feb 24, 2025 am 10:19 AM

Creating a Flashing Text Effect with jQuery

コアポイント

    このチュートリアルは、フラッシュテキスト効果を実現し、ウェブサイトのスタイルとアピールを強化するクロスブラウザー互換のjQueryプラグインを作成する方法をガイドします。プラグインはまた、アクセシビリティの問題を考慮し、
  • メソッドの停止効果を提供します。 stop()
  • プラグインは「Audero Flashing Text」という名前で、jQueryプラグインのベストプラクティスに従って開発されています。デフォルトの設定、初期化、開始、停止、および
  • メソッドが含まれています。これらのメソッドは、表示されるテキスト、フェードイン、期間、フェードアウト、およびテキスト選択が選択される順序を制御します。 isRunning
  • メソッドは、効果を実行するため、プラグインの最も重要な部分です。指定された領域内にフローティングする要素を作成することを伴い、start()関数は作成された要素をDOMから削除し、次の構成、前、またはランダムな文字列を使用して現在の構成に基づいて効果を再度実行します。 fadeOut()
  • チュートリアルは、プラグインを使用し、フェードアウト時間やテキスト選択の注文などの設定を調整する例で終わります。 「Audero Flashing Text」プラグインは無料で、MITおよびGPL-3.0のデュアルライセンスの下で変更または改善できます。
時々、あなたのウェブサイトのルックアンドフィールを強化し、訪問者の注目を集めるためにいくつかのクールな効果が必要です。あなたのウェブサイトのスタイルを強化するために、市場には多くの無料のインスタントプラグインがあります。このチュートリアルでは、特定の領域内にランダムに配置されたランダムにサイズのフラッシュテキストを作成するクロスブラウザーjQueryプラグインを開発するように導きます。また、アクセシビリティの問題を検討します(結局、テキストのフラッシュについて話している)。効果を停止する方法を提供します。このプラグインを使用すると、同じページで複数のアニメーションが可能になり、各アニメーションは他のアニメーションから完全に独立しています。最終結果は、ページに簡単に含めることができるJavaScriptファイルになります。このプラグインを作成するには、jQueryプラグインによって提案されたガイドラインに従っているため、jQueryプラグインのベストプラクティスを使用して開発されます。 「JQUERYプラグインとしてクロスブラウザーコンテキストメニューを実装する」という投稿で、このトピックを既に概説しました。また、これからは、プラグインを「Audero Flashing Text」と呼んでいることに注意してください。

stop()

start

「Audero Flashing Text」の出発点を示したので、それに含まれる方法を理解する必要があります。プラグインを初期化する方法と効果を開始する方法が必要だと想像するのは難しくありません。初期化関数は、特定の値が設定されていない場合に使用されるいくつかのデフォルト値を利用します。さらに、前のセクションで述べたように、ユーザーにストップ効果を提供する機能が良好になります。最後になりましたが、効果が実行されているかどうかをテストする方法を持つことが役立ちます。したがって、プラグインには次のものが含まれます

  • デフォルト設定
  • init()メソッド
  • start()メソッド
  • stop()メソッド
  • isRunning()メソッド

デフォルト設定

特定の設定を指定していない場合、特定のデフォルト構成を行うと常に便利です。 「Auderoフラッシュテキスト」の主なプロパティは、表示されるテキストのセットで、配列を使用して指定できます。点滅するテキストがあるため、テキストが行うアクションは次のとおりです。1。ゆっくりと見え、2。しばらく見えるようになり、3。ゆっくりと消えます。この動作に基づいて、他の有用な設定は、フェードイン時間、期間、フェードアウト時間です。最後に追加する設定は選択です。これにより、ユーザーはテキスト選択が選択される順序を選択できます。可能な値はselectionrandomascendingdescendingです。これらすべてのテキストをコードに変換すると、結果は次のとおりです。

var defaultValues = {
  strings: [], // 要显示的字符串数组
  fadeIn: 300, // 以毫秒为单位的时间
  duration: 500, // 以毫秒为单位的时间
  fadeOut: 300, // 以毫秒为单位的时间
  selection: "random" // 文本选择的顺序。可能的值:“random”、“ascending”、“descending”
};
ログイン後にコピー
ログイン後にコピー
init()メソッド

メソッドを使用して、プラグインがどのように呼び出されるかをテストし、効果を実行する領域をスタイリングします。表示される文字列の少なくとも配列を含む1つのパラメーターのみを受け入れますが、デフォルト値をオーバーライドする値も含まれます。あるいは、パラメーターなしで関数を呼び出すことができます。その場合、デフォルト値が適用されます。この場合、表示される文字列のセットは、選択した要素の子ノードのテキストを使用します。後者の方法では、すぐにプラグインの実験を開始できます。テスト後、init()メソッドはinit()CSS属性を使用して、選択した要素の子要素を非表示にするため、エリアの高さは低下しません。この時点で、最後に行うべきことは、アニメーションを実行するためにvisibility関数を呼び出すことです。 start()のコードは次のとおりです init()

start()method
init: function(options) {
  if (typeof options === "undefined" || options === null) {
    options = {};
  }
  if (typeof options.strings === "undefined" || options.strings == null) {
    if (this.children().size() === 0) {
      $.error("如果您没有指定要显示的文本,则该元素必须至少有一个子元素");
      return;
    } else {
      options.strings = this.children().map(function() {
        return $(this).text();
      });
    }
  }

  this.css("position", "relative");
  this.children().css("visibility", "hidden");

  methods.start($.extend({}, defaultValues, options), null, this.attr("id"));
}
ログイン後にコピー
ログイン後にコピー

これは、実際に効果を実行するコードが含まれているため、プラグインの最も重要な部分です。次の3つのパラメーターを受け入れます

- オブジェクトを構成します。
  • settings - 表示される文字列。
  • index - 効果が適用される領域のID。
  • idElem
  • メソッドと同じように、最初にパラメーターをテストします。その後、指定された領域に浮かぶ
要素を作成します。作成後、要素は目に見えない(

)ため、フェードメソッドを使用してゆっくりと表示される可能性があります。後で見るように、init()関数には、作成された要素をDOMから削除し、次の構成、前、またはランダムな文字列を使用して現在の構成に基づいて再度効果を実行するコールバック関数があります。メソッドの最後の数行で、要素が領域のサイズに収まるように位置を設定します。 <span>

var defaultValues = {
  strings: [], // 要显示的字符串数组
  fadeIn: 300, // 以毫秒为单位的时间
  duration: 500, // 以毫秒为单位的时间
  fadeOut: 300, // 以毫秒为单位的时间
  selection: "random" // 文本选择的顺序。可能的值:“random”、“ascending”、“descending”
};
ログイン後にコピー
ログイン後にコピー

stop()method

stop()メソッドは、アニメーションを停止し、最後に作成された<span>要素をDOMから削除してから、通常の可視性属性を復元するために使用されます。以下のソースコードでわかるように、テキストはスムーズに削除されます。このメソッドは最初にアニメーション(jQuery stop()メソッド)を停止し、テキストをフェードアウトし、画面からゆっくりと消え(jquery fadeOut()メソッド)、dom(jquery remove()メソッド)から削除します。 。

init: function(options) {
  if (typeof options === "undefined" || options === null) {
    options = {};
  }
  if (typeof options.strings === "undefined" || options.strings == null) {
    if (this.children().size() === 0) {
      $.error("如果您没有指定要显示的文本,则该元素必须至少有一个子元素");
      return;
    } else {
      options.strings = this.children().map(function() {
        return $(this).text();
      });
    }
  }

  this.css("position", "relative");
  this.children().css("visibility", "hidden");

  methods.start($.extend({}, defaultValues, options), null, this.attr("id"));
}
ログイン後にコピー
ログイン後にコピー

isrunning()Method

この方法は、特定の要素がちらつき効果を実行しているかどうかをテストするだけなので、理解しやすいです。テストプロセスでは、クラスaudero-flashing-text<span>要素をチェックします。少なくとも1つの要素が見つかった場合、メソッドはtrueを返します。説明されているコードは次のとおりです false このプラグインの使用方法

start: function(settings, index, idElem) {
  if (typeof idElem === "undefined") {
    idElem = this.selector;
  }
  if (typeof settings === "undefined") {
    $.error("无效的方法调用:未指定设置");
    return;
  }
  if (index == null) {
    if (settings.selection === "ascending")
      index = 0;
    else if (settings.selection === "descending")
      index = settings.strings.length - 1;
    else
      index = Math.floor(Math.random() * settings.strings.length);
  }

  var $text = $("<span>")
    .text(settings.strings[index])
    .addClass("audero-flashing-text") // 这用作书签,以帮助停止方法
    .css({
      position: "absolute",
      display: "none",
      fontSize: (Math.random() * 2 + 0.5) + "em"
    })
    .appendTo("#" + idElem)
    .fadeIn(settings.fadeIn)
    .animate({ opacity: 1 }, settings.duration) // 模拟延迟
    .fadeOut(settings.fadeOut, function() {
      // 删除当前元素
      $(this).remove();
      var nextIndex;
      if (settings.selection === "ascending")
        nextIndex = (index + 1) % settings.strings.length;
      else if (settings.selection === "descending")
        nextIndex = (index === 0) ? settings.strings.length : index - 1;
      else
        nextIndex = Math.floor(Math.random() * settings.strings.length);
      // 再次启动效果
      methods.start(settings, nextIndex, idElem);
    });
  // 设置位置,以便元素适合区域的大小
  var posX = Math.floor(Math.random() * ($("#" + idElem).width() - $text.outerWidth()));
  var posY = Math.floor(Math.random() * ($("#" + idElem).height() - $text.outerHeight()));
  // 设置文本的位置
  $text.css({
    left: posX + "px",
    top: posY + "px"
  });
}
ログイン後にコピー
<

すべての方法を見たので、いくつかの例をチェックする時が来ました。次のを持っているとします

段落の実行効果を実行するテキストを使用するには、次のことを行う必要があります。

<div>以下は、以前と同じタグを使用しているが、異なる設定を使用した例です。

stop: function() {
  this.css("position", "inherit");
  // 删除浮动文本
  this
    .children("span.audero-flashing-text")
    .stop(true)
    .fadeOut(defaultValues.fadeOut)
    .remove();
  // 恢复默认可见性
  this.children().css("visibility", "visible");
}
ログイン後にコピー

結論

isRunning: function() {
  return (this.children("span.audero-flashing-text").size() > 0);
}
ログイン後にコピー

この記事では、特定の領域に点滅するテキスト効果を作成するjQueryプラグインを作成する方法を示します。それがどのように機能するかを確認するには、ソースコードをダウンロードし、リポジトリに含まれるドキュメントを表示します。 「Audero Flashing Text」プラグインは完全に無料です。また、MITとGPL-3.0のデュアルライセンスがあるため、変更したり改善したりすることもできます。

<div id="box">
  <p>Lorem</p>
  <p>Ipsum</p>
  <p>Dolor</p>
  <p>Sit</p>
  <p>Amet</p>
</div>
ログイン後にコピー

(FAQ)は、入力テキストのFAQ部分と一致して、jQueryを使用したフラッシュテキスト効果の作成に追加する必要がありますが、より簡潔で明確にするために、いくつかの書き換えと合理化ができます。

以上がjQueryで点滅するテキスト効果を作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Python vs. JavaScript:学習曲線と使いやすさ Python vs. JavaScript:学習曲線と使いやすさ Apr 16, 2025 am 12:12 AM

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

JavaScriptとWeb:コア機能とユースケース JavaScriptとWeb:コア機能とユースケース Apr 18, 2025 am 12:19 AM

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScript in Action:実際の例とプロジェクト JavaScript in Action:実際の例とプロジェクト Apr 19, 2025 am 12:13 AM

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptエンジンの理解:実装の詳細 JavaScriptエンジンの理解:実装の詳細 Apr 17, 2025 am 12:05 AM

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Python vs. JavaScript:コミュニティ、ライブラリ、リソース Python vs. JavaScript:コミュニティ、ライブラリ、リソース Apr 15, 2025 am 12:16 AM

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

Python vs. JavaScript:開発環境とツール Python vs. JavaScript:開発環境とツール Apr 26, 2025 am 12:09 AM

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

JavaScript通訳者とコンパイラにおけるC/Cの役割 JavaScript通訳者とコンパイラにおけるC/Cの役割 Apr 20, 2025 am 12:01 AM

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

Webサイトからアプリまで:JavaScriptの多様なアプリケーション Webサイトからアプリまで:JavaScriptの多様なアプリケーション Apr 22, 2025 am 12:02 AM

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。

See all articles