我有以下声明
if(play == '4'){
$(this).removeAttr('data-playa');
$(this).attr("data-pausea",'5');
}
基本上它将当前元素的 data-playa="4"
替换为 data-pausea="5"
。 $(this)
使用 article-play 类引用当前 anchor 标记,因此 $(article-play)
。我需要以某种方式编辑此代码以将以下内容应用于页面上的所有 $(article-play)
元素,当前元素除外:
$(article-play).removeAttr('data-pausea');
$(article-play).attr("data-playa",'4');
所以逻辑上会是这样
if(play == '4'){
// Apply this to current .article-play
$(this).removeAttr('data-playa');
$(this).attr("data-pausea",'5');
// Apply this to all other .article-play on a page
$(article-play).removeAttr('data-pausea');
$(article-play).attr("data-playa",'4');
}
最佳答案
最简单的:
$(this).removeAttr('data-playa').attr("data-pausea",'5');
$(article-play).not(this).removeAttr('data-pausea').attr("data-playa",'4');
如果您改用 data()
方法:
$(this).removeData('playa').data("pausea",'5');
$(article-play).not(this).removeData('pausea').data("playa",'4');
但是,如果其他元素是兄弟元素:
$(this).removeData('playa').data("pausea",'5').siblings()
.removeData('pausea').data("playa",'4');
关于javascript - 从除当前元素之外的所有相同元素中删除数据属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16947759/