以下显示FF中的警报一和二,但在Safari中只显示一个.此行中的任何内容都与Safari不兼容吗?if($('div[data-foo="'+bar+'"').hasClass('baz')){
jQuery的
alert('one');
if($('div[data-foo="'+bar+'"').hasClass('baz')){
alert('two');
}else{
alert('three');
}
Run Code Online (Sandbox Code Playgroud)
HTML
<div data-foo="bar" class="baz"></div>
Run Code Online (Sandbox Code Playgroud)
may*_*lle 18
你错过了一个结束括号].此外,bar在这种情况下是字符串文字,而不是变量.这有效:
alert('one');
if($('div[data-foo="bar"]').hasClass('baz')){
alert('two');
}else{
alert('three');
}
Run Code Online (Sandbox Code Playgroud)
或者您可以将bar定义为变量:
var bar = "bar";
alert('one');
if($('div[data-foo="' + bar + '"]').hasClass('baz')){
alert('two');
}else{
alert('three');
}
Run Code Online (Sandbox Code Playgroud)
(不知道以前在Firefox中是如何工作的.)