APA*_*AD1 4 jquery custom-data-attribute
我的目标是将一些jQuery添加到一个项目中,该项目将检查元素是否data-attribute没有值.例如,使用video标签,您只需添加autoplay一个没有值的标签,它将自动播放.我试图做同样的事情,并想知道是否可能.这是我尝试过的,但它目前正在返回false:
$(function() {
$('div').click(function() {
if ($(this).attr('data-specs')) {
console.log('has specs');
} else {
console.log('no specs');
}
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-specs>Specs</div>Run Code Online (Sandbox Code Playgroud)
通过jQuery,您可以使用该.is(selector)方法.
因此,如果将选择器设置为属性1,则可以进行检查
$(function() {
$('div').click(function() {
if ($(this).is('[data-specs]')) {
console.log('has specs');
} else {
console.log('no specs');
}
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-specs>Specs</div>Run Code Online (Sandbox Code Playgroud)
你可以用this.hasAttribute('data-specs')它代替。
$(function() {
$('div').click(function() {
if (this.hasAttribute('data-specs')) {
console.log('has specs');
} else {
console.log('no specs');
}
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-specs>Specs</div>Run Code Online (Sandbox Code Playgroud)