Jquery Onclick切换数据属性
是否可以使用Jquery在单击时切换数据属性(例如Jquery Onclick切换数据属性,jquery,Jquery,是否可以使用Jquery在单击时切换数据属性(例如数据均衡器监视) 以下是html: <a class="accordion-expander" href="#" data-equalizer-watch> 只需使用JQuery中的.data()方法将数据均衡器监视值设置为false,即可进行切换 $(this).data("equalizer-watch", false); 但是,如果要将其从显示中删除,只需执行以下操作: $(this).removeAttr("data-e
数据均衡器监视
)
以下是html:
<a class="accordion-expander" href="#" data-equalizer-watch>
只需使用JQuery中的
.data()
方法将数据均衡器监视
值设置为false
,即可进行切换
$(this).data("equalizer-watch", false);
但是,如果要将其从显示中删除,只需执行以下操作:
$(this).removeAttr("data-equalizer-watch");
如果使用
.attr()
方法更改值,则不会呈现数据
。必须使用.data()
方法设置数据
属性以重新呈现它。只需使用JQuery中的.data()
方法将数据均衡器监视
值设置为假
$(this).data("equalizer-watch", false);
但是,如果要将其从显示中删除,只需执行以下操作:
$(this).removeAttr("data-equalizer-watch");
如果使用
.attr()
方法更改值,则不会呈现数据
。必须使用.data()
方法设置数据
属性以重新呈现它。若要执行此操作,可以在attr()
和removeAttr()之间来回切换
方法调用取决于单击元素时元素是否具有属性:
$(“.accordion expander”)。单击(函数(e){
e、 预防默认值();
var method=$(this).is(“[数据均衡器监视]”)?“removeAttr”:“attr”;
$(此[方法]('data-equalizer-watch','');
});代码>
a[数据均衡器监视]{
颜色:#C00;
}
要执行此操作,您可以根据单击元素时是否具有属性,在attr()
和removeAttr()方法调用之间来回切换:
$(“.accordion expander”)。单击(函数(e){
e、 预防默认值();
var method=$(this).is(“[数据均衡器监视]”)?“removeAttr”:“attr”;
$(此[方法]('data-equalizer-watch','');
});代码>
a[数据均衡器监视]{
颜色:#C00;
}
.toggleData()
不是默认的jQuery方法,因此,让我们创建一个:
而不是在迷你插件中使用jQuery的和方法
$.fn.toggleData=函数(dname){
var d=`data-${dname}`;
返回this.is(`[${d}]`)?this.removeAttr(d):this.attr(d');
};
$(“.accordion expander”)。单击(函数(e){
e、 预防默认值();
$(this.toggleData('equalizer-watch');
});代码>
[数据均衡器手表]{颜色:紫红色;}
.toggleData()
不是默认的jQuery方法,因此,让我们创建一个:
而不是在迷你插件中使用jQuery的和方法
$.fn.toggleData=函数(dname){
var d=`data-${dname}`;
返回this.is(`[${d}]`)?this.removeAttr(d):this.attr(d');
};
$(“.accordion expander”)。单击(函数(e){
e、 预防默认值();
$(this.toggleData('equalizer-watch');
});代码>
[数据均衡器手表]{颜色:紫红色;}
您想更改实际的HTML属性,还是“仅”内部数据?您想更改实际的HTML属性,还是“仅”内部数据?第二个代码段更好,工作起来像个符咒。第二个代码段更好,工作起来像个符咒。