После дальнейшего расследования ошибка была обнаружена в другой части кода. Вот что получилось:
loadInterval: function() {
var settimer = $('[name="loadingTime]').val();
var interval = setInterval(function() {
if (settimer == 0) {
window.clearInterval(interval);
$('[id^="interstitial-container"]').remove();
};
settimer--;
if (settimer >= 0) {
$('.ncount').text(settimer);
}
}, 1000);
}
в
var settimer = $('[name="loadingTime]').val();
мы пропустили закрывающую кавычку после loadingTime! который js возвращался как undefined, и iOS не обрабатывал его изящно, поэтому var settimer не был установлен на ноль, поэтому всякий раз, когда эта функция loadInterval была вызвана, она была не определена, и мы проверили, нужно ли нам загружать на основе неопределенных или нет , в нашем случае он не был и продолжал загружать снова и снова, всегда получая неопределенный ответ, но без ошибок. Я думаю ...
Какова ваша петля? –
Обратите внимание, что '$ ('. LoadingTime')' или '$ ('[name =" loadingTime "]')' никогда не будет 'undefined', jQuery всегда возвращает объект. – Teemu
Способ определить, что селектор jQuery соответствует чему-либо, путем проверки его длины: 'if ($ ('[name =" loadTime "]'). Length! = 0)' – Barmar