Я написал несколько jQuery, который работает с плагином Map Map Hotspot, чтобы добавить классы во всплывающее окно на основе используемого значка.jQuery - Не добавлять класс в сафари?
Это работает через Chrome и Firefox, но не в Safari, мне было интересно, может ли кто-нибудь определить, почему?
$(window).load(function() {
$('.info-icon').each(function() {
var icon = $(this);
var bgImg = $(this).css('background-image');
if (bgImg == 'url("http://www.domain.com/client1/wp-content/themes/BespokeTheme/images/purple-circle.svg")') {
$(this).prev().addClass('detected-pu purple-popup');
}
if (bgImg == 'url("http://www.domain.com/client1/wp-content/themes/BespokeTheme/images/orange-circle.svg")') {
$(this).prev().addClass('detected-pu orange-popup');
}
if (bgImg == 'url("http://www.domain.com/client1/wp-content/themes/BespokeTheme/images/green-circle.svg")') {
$(this).prev().addClass('detected-pu green-popup');
}
if (bgImg == 'url("http://www.domain.com/client1/wp-content/themes/BespokeTheme/images/lblue-circle.svg")') {
$(this).prev().addClass('detected-pu lblue-popup');
}
if (bgImg == 'url("http://www.domain.com/client1/wp-content/themes/BespokeTheme/images/dblue-circle.svg")') {
$(this).prev().addClass('detected-pu dblue-popup');
}
})
});
Спасибо!
'console.log (bgImg)', чтобы увидеть, что Safari считает –
Этот вид кодирования действительно никогда не работает хорошо, где вы пытаетесь сопоставлять URL-адреса или цвета из CSS с жестко заданными значениями, слишком много вещей, которые может испортить это, разные браузеры возвращают разные вещи и т. д. – adeneo