HTML およびプラグイン アプリケーションにおけるデータ カスタム属性の使用の概要

HTML およびプラグイン アプリケーションにおけるデータ カスタム属性の使用の概要
HTML にはデータ属性が含まれていることがよくあります。これらは HTML5 のカスタム属性です。さまざまな機能があり、JS を直接呼び出すのに非常に便利です。これらは HTML5 の属性ですが、幸いなことに jQuery はユニバーサルなので、IE の下位バージョンを含む基本的にすべてのブラウザーで正常に使用できます。使い方の簡単な紹介は次のとおりです。
1. 使いやすい

コードをコピー
コードは次のとおりです。

<div id="ウィジェット" データテキスト="123456"></div>


コードをコピー
コードは次のとおりです。

$(関数(){
var _widget = $("#widget").attr("data-text"); alert(_widget); //data-text="123456" なので、123456 が出力されます
})

2. $.fn.extend を使ってプラグインを書く

コードをコピー
コードは次のとおりです。

<div id="widget" data-widget-config="{effect:'click'}">これはテスト領域です</div>


コードをコピー
コードは次のとおりです。

//プラグイン拡張部分
;(関数($){
$.fn.extend({
テスト:function(config){
/**
* @param 効果 効果
* config||{} カスタムプロパティが渡された場合、デフォルト値は実行されません
*/
// デフォルト値を設定する
config=$.extend({
効果: 'クリック'、
},config||{});
var effect = config.effect;
var _text=config._text;
if(効果=='クリック'){
$(this).click(function(){
alert('このクリック');
})
}それ以外の場合(効果=='マウスオーバー'){
$(this).mouseover(function(){
alert("これはマウスオーバーです");
})
}
}
})
})(jQuery)


コードをコピー
コードは次のとおりです。

//呼び出し部分、HTMLのデータ属性はこれに依存します
$(関数(){
var _widget = $("#widget").attr("データウィジェット設定");
// 文字列をJSONオブジェクトに変換する方法は2つあります
var widgetConfigJSON = eval("("+_widget+")");
// var widgetConfigJSON = (新しい Function("return " + _widget))();
$("#widget").test(widgetConfigJSON);
// HTML のデータ属性は data-widget-config="{effect:'click'}" なので、ここでクリック イベントが呼び出されます。
data-widget-config="{effect:'mouseover'}" の場合、マウスオーバーのイベントが呼び出されます})

<<:  Docker5フル機能の港湾倉庫構築プロセス

>>:  CSS3 フリップカード番号サンプルコード

推薦する

Dockerはbusyboxを使用してベースイメージを作成します

Docker イメージの最初の行は FROM alpine などのイメージで始まりますが、最初のベー...

WeChat 8.0の爆発的な特殊効果を実現するために300行以上のCSSコードが必要

WeChat 8.0 アップデートの主な特徴は、アニメーション絵文字のサポートです。送信するメッセー...

Ubuntu 18.04 でソースコードから Odoo14 をインストールするチュートリアル

目次このシリーズの背景概要PostgreSQL データベースの準備ソースからインストール仮想環境の作...

Linux リモート コントロール Windows システム プログラム (3 つの方法)

場合によっては、Windows システム上のプログラムを Linux 上でリモートで実行する必要があ...

Centos8 に nginx をインストールするための詳細なチュートリアル (画像とテキスト)

Nginx (「エンジン エックス」と発音) は、インターネット上の最大規模のサイトの負荷を処理す...

MySQL Limitパフォーマンス最適化とページングデータパフォーマンス最適化の詳細な説明

MySQL Limit はセグメント内のデータベース データをクエリでき、主にページングで使用されま...

Vue3 Reactivityの実装方法を教えます

目次序文始めるちょっとした考えコードの実装真似する実装トラックトリガーの実装観察の実装計算の実装序文...

フェッチネットワークリクエストのカプセル化例の詳細な説明

エクスポートデフォルト({ URL、 メソッド = 'GET'、 データ = nu...

セマフォによるTomcatの異常終了の解決方法

最近はビッグデータで遊んでいます。友人が私のところに来て、オンラインの Tomcat が不可解に終了...

mysql8.0.11クライアントがログインできない問題の解決方法

この記事では、mysql8.0.11クライアントがログインできない問題の解決策を紹介します。参考まで...

MySQL での重複キー更新時の replace into と insert into の使用法と相違点の分析

この記事では、MySQL での重複キー更新時の replace into と insert into...

MySQL エラー 1290 (HY000) の解決方法

私は長い間問題に取り組み、文法上の問題を何度も確認しました。しかし、後でネットで調べてみたら、突然理...

Ubuntu 20.04 に MySql5.7 をインストールして構成するための詳細なチュートリアル

目次1. Ubuntuソースの変更2. MySQLをインストールする3. 新しいユーザーを作成し、権...

js の一般的でない演算子と演算子の概要

一般的な演算子と JavaScript の演算子の概要カテゴリオペレーター算術演算子+、–、*、/、...