jQuery .trigger () не работает в Internet Explorer - PullRequest
0 голосов
/ 27 августа 2018

Я запускаю событие в документе при выполнении функции.Он отлично работает во всех браузерах, кроме Internet Explorer (версия 11).Вот мой код

function getBgUrl(el) {
    if (typeof el !== "undefined" || el !== null) {
        var bg = "";
        if (el.currentStyle) { // IE
            bg = el.currentStyle.backgroundImage;
        } else if (document.defaultView && document.defaultView.getComputedStyle) { // Firefox
            bg = document.defaultView.getComputedStyle(el, "").backgroundImage;
        } else { // try and get inline style
            bg = el.style.backgroundImage;
        }
        return bg.replace(/url\(['"]?(.*?)['"]?\)/i, "$1");
    }
}

if ( jQuery('#wcp_body').length ) {
    var image = document.createElement('img');
    image.src = getBgUrl(document.getElementById('wcp_body'));
    image.onload = function (event) {
        //jQuery(document).trigger('bgimageloaded');
        jQuery.event.trigger({type: "bgimageloaded" });
    };
}  

И, затем, когда документ готовзагружен.Я не понимаю, почему это не работает только в IE11.

Любая помощь будет оценена.
Спасибо

1 Ответ

0 голосов
/ 27 августа 2018

Я думаю, что вы установите timeOut для триггера.

setTimeout (function () {

// jQuery (document) .trigger ('bgimageloaded');

jQuery.event.trigger({type: "bgimageloaded" });

}, 10);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...