Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Ошибка на странице в IE (https://javascript.ru/forum/jquery/8942-oshibka-na-stranice-v-ie.html)

FRIE 21.04.2010 15:59

Ошибка на странице в IE
 
Сообщение: Объект не поддерживает это свойство или метод
Строка: 4954
Символ: 5
Код: 0
URI-код: http://site.local/jQuery.


Вот такая досада, и у меня много всяких ссылок с повешанными на них событиями и в какой то момент всё перестаёт работать те ниче не нажимается. Эти вызывают аякс запросы.

Чё с этим делать то знает конибудь
?

FRIE 21.04.2010 17:46

в мозилле ноу проблем всё работает ништяк. а в IE я заметил такое - загружаешь страницу и выбираешь раздел ну допустим назовем его info, и вот в этом разделе нажимаешь разные ссылки и аяксом обновляется часть страницы, пока всё нормально. А потом берешь и нажимаешь в меню на раздел info и всё писец всё перестает работать , все события onclick onselect onchange не событятся так сказать , жму на кнопки и ссылки и ниче не происходит . Теперь нажимаю еще раз в меню на раздел info, страничка то вроде как обновилась А всёравно ниче не работает. И тут только если перезагрузить страницу - то всё снова начинает работать



вот строчки которые выдает ИЕ в ошибке

Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
штамп времени: Wed, 21 Apr 2010 13:40:19 UTC


Сообщение: Недопустимый знак
Строка: 88232618
Символ: 32
Код: 0

я такую строку врятли найду у мення их тупо стоко нету окуда вообще берутся эти цыфры и как избавиться от бага?

FRIE 22.04.2010 10:46

Нашел вот строчку на которую брешит ИЕ

return new window.XMLHttpRequest();
Пишет:
объект не поддерживает свойство или метод

в чем косяк?

Skipp 22.04.2010 10:59

потому что в ie нет такого метода.
смотри, читай, учи =)

FRIE 22.04.2010 11:06

значит это баг jquery???.

Я плохо разбираюсь в js
вот кусочек кода где эта строчка, посмотрите пожалуйста может в этом кусочке этот код правильный ?
ajaxSettings: {
		url: location.href,
		global: true,
		type: "GET",
		contentType: "application/x-www-form-urlencoded",
		processData: true,
		async: true,
		/*
		timeout: 0,
		data: null,
		username: null,
		password: null,
		traditional: false,
		*/
		// Create the request object; Microsoft failed to properly
		// implement the XMLHttpRequest in IE7 (can't request local files),
		// so we use the ActiveXObject when it is available
		// This function can be overriden by calling jQuery.ajaxSetup
		xhr: window.XMLHttpRequest && (window.location.protocol !== "file:" || !window.ActiveXObject) ?
			function() {
				return new window.XMLHttpRequest();
			} :
			function() {
				try {
					return new window.ActiveXObject("Microsoft.XMLHTTP");
				} catch(e) {}
			},
		accepts: {
			xml: "application/xml, text/xml",
			html: "text/html",
			script: "text/javascript, application/javascript",
			json: "application/json, text/javascript",
			text: "text/plain",
			_default: "*/*"
		}
	},

Skipp 22.04.2010 11:09

А ты код когда-нибудь приведёш или гадать будем?

FRIE 22.04.2010 11:15

кстати попробовал поменять строчки местами
function() {
				return new window.XMLHttpRequest();
			}

function() {
				try {
					return new window.ActiveXObject("Microsoft.XMLHTTP");
				} catch(e) {}
			}


Перестало работать в мозилле но заработало в ИЕ, но в Ие всёравно попрежнему ошибки

FRIE 22.04.2010 11:24

11

FRIE 22.04.2010 11:24

Цитата:

Сообщение от Skipp (Сообщение 52570)
А ты код когда-нибудь приведёш или гадать будем?

вот кнопка
<input type=submit value='Написать сообщение'  onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true");'>


В ответе скрипт формирует форму и загружает в див Mail

Skipp 22.04.2010 11:30

Попробуй
ajaxSettings: {
		url: location.href,
		global: true,
		type: "GET",
		contentType: "application/x-www-form-urlencoded",
		processData: true,
		async: true,
		/*
		timeout: 0,
		data: null,
		username: null,
		password: null,
		traditional: false,
		*/
		// Create the request object; Microsoft failed to properly
		// implement the XMLHttpRequest in IE7 (can't request local files),
		// so we use the ActiveXObject when it is available
		// This function can be overriden by calling jQuery.ajaxSetup
		xhr: window.XMLHttpRequest && (window.location.protocol !== "file:" || !window.ActiveXObject) ?
			function() {
				return new window.XMLHttpRequest();
			} :
			function() {
				try {
					return new ActiveXObject("Msxml2.XMLHTTP");
				} catch(e) {
					return new ActiveXObject("Microsoft.XMLHTTP");}
			},
		accepts: {
			xml: "application/xml, text/xml",
			html: "text/html",
			script: "text/javascript, application/javascript",
			json: "application/json, text/javascript",
			text: "text/plain",
			_default: "*/*"
		}
	},

FRIE 22.04.2010 11:37

В ие по прежнему не работает как надо. опять же - загружаешь страницу и все ссылочки работают но как только нажмешь еще раз на этот раздел то ничкакой реакции при нажатии ссылок. В FF всё работает прекрасно
ИЕ ругается всё на ту же строчку
return new window.XMLHttpRequest();

Skipp 22.04.2010 11:42

А какая реакция должна быть? Содержимое не обновляется потому что, содержимое берётся из кеша, так как ссылка не изменилась. Добавь в адреса &random=Math.random() и всё будет обновляться.

FRIE 22.04.2010 11:44

Цитата:

Сообщение от Skipp (Сообщение 52583)
А какая реакция должна быть? Содержимое не обновляется потому что, содержимое берётся из кеша, так как ссылка не изменилась. Добавь в адреса &random=Math.random() и всё будет обновляться.

можешь пожалуйста напримере моей ссылочки написать в какое место &random=Math.random() вставить ?

Skipp 22.04.2010 12:03

<input  type=submit value='Написать сообщение'  onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&random=" + Math.random());'>

Совсем заработался((((
Крыша едет

FRIE 22.04.2010 12:05

Цитата:

Сообщение от Skipp (Сообщение 52590)
<input  type=submit value='Написать сообщение'  onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&random=Math.random()");'>

я так уже пробовал - не получается, все атк же не пашет, и еще посмотрел хтмл там вроде как по идее на этой ссылке в конце должно появиться случайное число как я понимаю но там написан прямо код

SkyLight 22.04.2010 14:44

Естественно там будет код, т.к. Math.random() надо вынести за кавычки.

FRIE 22.04.2010 15:49

Цитата:

Сообщение от SkyLight (Сообщение 52618)
Естественно там будет код, т.к. Math.random() надо вынести за кавычки.

<input type=submit class='orangebutton' style='width:160px; height:23px;float:left;margin-left:5px;'  value='Написать сообщение'  onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&"random=Math.random());'>


))) я конечно же неправильно написал так ничего тоже не получается. напишите пожалуйста как надо правильно =)

SkyLight 22.04.2010 15:53

Уважаемый, вы вообще жабаскрипт учили хоть когда-нибудь? У вас должна быть строка запроса, к которой надо дописать случайное число. Конкатенацию строк никто не отменял, так почему у вас ее нет? И зачем вы вынесли за кавычки еще и random=?

FRIE 22.04.2010 16:10

Цитата:

Сообщение от SkyLight (Сообщение 52628)
Уважаемый, вы вообще жабаскрипт учили хоть когда-нибудь? У вас должна быть строка запроса, к которой надо дописать случайное число. Конкатенацию строк никто не отменял, так почему у вас ее нет? И зачем вы вынесли за кавычки еще и random=?


onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&random=".Math.random());'>


так тоже не хочет((

я же говорил что я нуб полнейший в яваскрипте, мне нужно просто часть данных на сайте подгружать аяксом, я и нашел jquery тк с ним вообще не нужно никаких знаний . ну конечно я изучал js и книги читал и примеры делал но опыта ничерта нету поэтому я хз как это писать . я могу токо посмотреть на примере и потом делать так же в других похожих случаях . ....

напишите пожалуйста как это правильно написать =)

FRIE 22.04.2010 16:13

onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&random=").Math.random();'>


и так тоже ничего

SkyLight 22.04.2010 16:18

Цитата:

я же говорил что я нуб полнейший в яваскрипте
Ну так изучите сначала основы языка, а уж потом беритесь за jQuery и AJAX, ну что за люди пошли ленивые... И откуда точка? Конкатенация - это "+".

SkyLight 22.04.2010 16:39

Это никогда не закончится...
$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&" + Math.random());

FRIE 22.04.2010 16:55

Цитата:

Сообщение от SkyLight (Сообщение 52638)
Это никогда не закончится...
$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&" + Math.random());

вот что хтмл коде
onclick='$("#Mail").load("index.php?action=mail_actions&addnewmessage=true&random="+ Math.random());'>


никакого случайного числа не получается

я бы с радостью изучил яваскрипт если бы были хорошие видеоуроки как у евгения попова по пхп и mysql, например когда я их посмотрел сразу стало очень много понятно , а когда книги читал ваще не врубался. так и про яваскрипт читаю и не понимаю, нужно чтобы кто-то показывал. а этот кто-то всегда хочет денег =)))

SkyLight 22.04.2010 17:05

Цитата:

я бы с радостью изучил яваскрипт
Вы находитесь на форуме сайта, полностью посвященного жабаскрипту с кучей статей и примеров. Или вам все разжевать надо? Я лично предпочитаю давать людям удочки, а не рыбу, но вы, видимо, удочки отрицаете по каким-то, одному вам понятным, убеждениям...

<a href="" onclick="location.href += '#' + Math.random(); return false;">Ссылка</a>

FRIE 22.04.2010 17:37

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

SkyLight 22.04.2010 19:21

Лучше читайте всё, т.к. (без обид) знаний у вас явно маловато. Пройдитесь по статьям и документации на этом сайте, тут много чего полезного. Где-то на форуме давали названия хороших, проверенных книг.

Вот простой пример использования рандома:
var url = 'image.gif'; // Старый путь
url += '?rand=' + Math.random(); // Добавляем рандом к пути
alert(url);


Часовой пояс GMT +3, время: 11:13.