Internet Explorer не может открыть Интернет-сайт Операция прервана, как исправить эту ошибку? - PullRequest
4 голосов
/ 15 декабря 2009

Этот код дает ошибку в IE

Internet Explorer не может открыть Интернет-сайт Операция прервана, как исправить эту ошибку?

var tip = "<p>Most computers will open PDF documents ";
tip += "automatically, but you may";
tip += "need to download <a title='Link to Adobe website-opens in a new window'";
tip +=" href='http://www.adobe.com/products/acrobat/readstep2.html'  
               target='_blank'>Adobe Reader</a>.</p>";

$(document).ready(function(){

    //IF NUMBER OF PDF LINKS IS MORE THAN ZERO INSIDE DIV WITH ID maincontent
    //THEN THIS WILL PUT TIP PARAGRAPH AS LAST CHILD OF DIV
    if($("div#maincontent a[href*='/pdf']").length>0){
    $("div#maincontent").children(":last-child").after(tip);
    }
});

Смотрите эту страницу в IE: http://jsbin.com/oliho4

Ответы [ 3 ]

4 голосов
/ 15 декабря 2009

Мне кажется очевидным, что вы пытаетесь изменить какой-либо элемент до завершения загрузки страницы. По крайней мере, это именно то, что вы делаете на своей демонстрационной странице. Вы не заключаете код в $(document).ready(), как в вопросе

Попробуйте вместо этого демо-сайт http://jsbin.com/ivuqa, который правильно оборачивает соответствующие строки в ready()


Кроме того, при использовании XHTML могут возникнуть некоторые проблемы. В этом случае просто оберните оскорбительную часть JavaScript, как это. (CDATA для подтверждения правильности XML, многострочный комментарий javascript для скрытия cdata от браузера, который его не понимает и, следовательно, не сможет запустить javascript.

/* <![CDATA[ */
    var tip = "<p>Most computers will open PDF documents automatically, but you may need to download <a title='Link to Adobe website-opens in a new window'";
    tip +=" href='http://www.adobe.com/products/acrobat/readstep2.html' target='_blank'>Adobe Reader</a>.</p>";
/* ]]> */
0 голосов
/ 21 апреля 2010

Скрипт на этой странице может быть полезен: http://blogs.msdn.com/ie/archive/2009/09/03/preventing-operation-aborted-scenarios.aspx

0 голосов
/ 15 декабря 2009

Это печально известное предупреждение, которое возвращает пустую страницу в IE?

Это известная и задокументированная проблема IE.

Эта ошибка обычно возникает, когда вы пытаетесь изменить элемент DOM до завершения загрузки страницы.

Попробуйте переместить скрипт внизу страницы.

Поскольку вы используете готовый документ, я не думаю, что это вызывает проблему. Может быть, это из-за другого скрипта на вашей странице?

EDIT:

Вы также можете попытаться включить свою функцию в атрибуте onload тела. Я только что прочитал это здесь .

РЕДАКТИРОВАТЬ 2: Я не видел вашу ссылку. Джиттер правильный, вы не используете jQuery $(document).ready()

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