Die folgenden zeigen Alarm eins und zwei in FF, aber nur eins in Safari. Ist irgendetwas in dieser Zeile in Safari inkompatibel? if($('div[data-foo="'+bar+'"').hasClass('baz')){
jQuery Selector nach Datenattribut funktioniert nicht in Safari
jQuery
alert('one');
if($('div[data-foo="'+bar+'"').hasClass('baz')){
alert('two');
}else{
alert('three');
}
HTML
<div data-foo="bar" class="baz"></div>
Ich stieß auf ein ähnliches Problem und es war wegen der fehlenden schließenden Klammer "]". Mac Safari würde einen Fehler ausgeben, während Windows-basierte Browser den Selektor selbst mit dem Syntaxfehler identifizieren könnten. –