/ / Зупиніть всі jQuery перед зміною iFrame - jquery, iframe, відмовлено у дозволі

Зупиніть всі jQuery, перш ніж змінювати iFrame - jquery, iframe, відмовлено у дозволі

У мене є сценарій з попередньою та наступною кнопкою(та інші елементи керування за межами iFrame), які переповнюють iFrame кожним натисканням кнопки. Це чудово працює, за винятком випадків, коли я зникаю на зображеннях всередині iFrame і змінюю вміст, поки він ще знаходиться в процесі. Проблема, яку я маю, знаходиться в IE 10 та 11. Здається, це добре в браузерах, які не входять до IE.

Я зняв код, щоб спростити перегляд того, що відбувається. В основному я вицвітаю зображення з-за меж iFrame, наприклад:

var iframe = $("#iframe").contents();
$("#imageFading",iframe).fadeTo(750,1.0);

Я змінюю вміст iFrame на зразок:

var html = "Some HTML Content here";
var iframe = $("#iFrame").get(0);
iframe = (iframe.contentWindow) ? iframe.contentWindow : (iframe.contentDocument.document) ? iframe.contentDocument.document : iframe.contentDocument;
iframe.document.open();
iframe.document.write(html);
iframe.document.close();

Якщо зміст iFrame змінюється, поки зображення все ще вицвітає, я отримую помилку:

SCRIPT70: Permission denied
File: jquery.min.js, Line: 4, Column: 928

Ця помилка зберігає виведення в консоль, поки я не оновлю чи закриваю сторінку. Я використовую jQuery 1.11.2.

Коли я використовував нестиснуту версію, її рядок 6999, який є:

} else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) {

Я спробував поставити fadeTo у спробу / ловити та використовувати jQuery 's clearQueue ().

Відповіді:

0 для відповіді № 1

Спробуй .stop(true, true) перед коригуванням iframe зміст.


0 для відповіді № 2

Я закінчила роботу, використовуючи jQuery "s Стоп функцію перед перезавантаженням iframe.

$("#imageFading",iframe).stop();