Когда я включаю только библиотеку jQuery 1.4, я получаю исключение, почему? - PullRequest
3 голосов
/ 05 марта 2010

Я получаю эту ошибку везде, где у меня есть только jquery 1.3 или 1.4.

"установка свойства, которое имеет только геттер"

и длинный список предупреждений в консоли ошибок Firefox.

Что происходит? Я не могу найти информацию по этому вопросу = /

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
  <title>Demo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <link rel="shortcut icon" href="images/favicon.ico">
    <link rel="stylesheet" href="css/common.css" type="text/css" /> 
    <link rel="stylesheet" href="css/modules.css" type="text/css" /> 
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
</head>  

Только некоторые фрагменты предупреждений:

Warning: reference to undefined property a[++e] 
Source File: /js/jquery-1.4.2.min.js 
Line: 30 
Warning: reference to undefined property a[0] 
Source File: /js/jquery-1.4.2.min.js 
Line: 30 
Warning: function oa does not always return a value 
Source File: /js/jquery-1.4.2.min.js Line: 18, Column: 165 
Source Code: th;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,

Ответы [ 2 ]

2 голосов
/ 21 апреля 2010

Хотя на этот вопрос уже был дан ответ, я чувствовал, что это необходимо.

У OP, вероятно, включены строгие предупреждения в его about: config в Firefox.

Чтобы изменить это просто загрузите about:config в Firefox, затем прокрутите вниз до javascript.options.strict и затем измените это значение на "false".

2 голосов
/ 05 марта 2010

Есть ли у вас "use strict"; заявление где-нибудь?Это заставляет браузеры ECMAScript5 анализировать JavaScript немного по-другому и может привести к тому, что это будет возвращено как ошибка.

Вы можете удалить это, чтобы исправить ошибку, но это означает, что вы не получите use strict.Обратите внимание, что use strict работает в любой области, в которой он выполняется. Итак, если вы хотите загрузить jQuery как нестрогий, но остальной код должен быть строгим, вы можете сделать это:

//load jQuery here

//create a scope
(function() {
     "use strict";
     // your code here
})();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...