Vous pouvez souvent voir du HTML avec des attributs de données. Ce sont des attributs personnalisés de HTML5 et peuvent faire beaucoup de choses. Il est très pratique d'appeler directement JS. Bien qu'ils soient des attributs de HTML5, ils sont heureusement communs à jQuery, ils le sont donc essentiellement. peut être utilisé normalement dans tous les navigateurs, y compris les versions inférieures d'IE. Voici une brève introduction à son utilisation :
1 Utilisation simple
$(function(){
var _widget= $(" #widget").attr("data -text"); alert(_widget);//Parce que data-text="123456", imprimer 123456
})
2. Utilisez avec $.fn.extend et écrivez Plug-in
//Pièce d'extension du plug-in
;(function($){
$.fn.extend({
Test:function(config){
/**
* @param effect effect
* config||{} n'exécute pas la valeur par défaut lorsque des attributs personnalisés sont transmis dans
*/
// Définir la valeur par défaut
config=$.extend({
effect:'click',
} ,config||{});
var effect=config.effect
var _text=config._text; >if(effet=='clic'){
$(this).click (function(){
alert('ce clic');
})
}else if(effect= ='mouseover'){
$(this).mouseover(function(){
alert("c'est un survol de la souris");
})
}
}
})
})(jQuery)
//La partie appelante, l'attribut data en HTML en dépend
$(function(){
var _widget= $("#widget").attr("data- widget-config");
// Il existe deux façons de convertir une chaîne en objet json
var widgetConfigJSON=eval("(" _widget ")");
// var widgetConfigJSON = (new Function( "return " _widget))();
$("#widget").Test( widgetConfigJSON);
//Parce que l'attribut data en HTML est data-widget-config="{effect:'click' }", l'événement click sera appelé ici,
S'il s'agit de data-widget-config="{ effect:'mouseover'}", alors appelez l'événement lorsque la souris bouge vers le haut})
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn