Привет, ребята, прежде чем публиковать это, я уже ушел и осмотрел многие места, пытаясь решить проблему, но не смог. This был самым близким, с которым я столкнулся.Ошибка обратного вызова jQuery() в IE
Я пытаюсь динамически создавать iframe и загружать содержимое в его src
, а затем использовать обратный вызов, чтобы что-то сделать с ним. Как всегда, все работает в FF/Chrome, за исключением IE.
У меня есть что-то вроде этого:
var iframe = $('#helloworld');
if (!iframe.exists()) {
iframe = $('<iframe/>', {
id : 'helloworld',
src : "about:blank"
}).css({
width : "100%",
height : "100%"
});
}
...
iframe.load(options.src, function() {
div.append(this);
$(this).find('body').append(box);
box.dialog({
close: function(event, ui) {
iframe.load("about:blank");
div.hide();
}
});
});
Подобно проблеме многих других людей, это не удалось на обратный вызов. Из того, что я читал в других сообщениях, это было связано с неправильным возвратом html в iframe, однако я уже проверил это, и мой html действителен.
Это то, что я возвращаю для своего iframe, как вы можете видеть, уже отключен до минимума для целей тестирования.
<!DOCTYPE html>
<html dir="ltr">
<head>
<title>Testing</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<style type="text/css">
</style>
</head>
<body></body>
</html>
В IE, то JQuery умирает @ линия 5951:
append: function() {
return this.domManip(arguments, true, function(elem) {
if (this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9) {
this.appendChild(elem);
}
});
},
SCRIPT65535: Неожиданный вызов метода или доступа к свойству. JQuery-1.9.1.js, строка 5951 символов 5
Где this
якобы быть моим iframe
, и он не имеет appendChild
метод.
Любой подсказку для дальнейшего устранения этой проблемы?
Вы должны удалить это лишняя запятая: 'Src: "о: пустой",'. – leaf
У меня есть что-то еще после этого, я удалил эти другие атрибуты, поскольку это не относится к этому вопросу. После этого я дал «allowtransparency: true». – codenamezero
Я так вам сказал, потому что это уже случалось со мной очень часто, IE не любит лишние запятые:/ – leaf