IE ругается, объясните причину
Привет всем!!! Есть такой js-скрипт (я в js новичок, поэтому ногами не бейте):
function ResetEdit() { editForm.empty(); editableBlock.slideUp(600); addCommentForm.load('?page=comment-add' , {}, function() { jQuery('input#comment-add').click(function() { RefreshCommentAddForm(); }) }) formHeader.text('ДОБАВЛЕНИЕ КОММЕНТАРИЯ'); } function RefreshCommentAddForm() { var comment = jQuery('textarea:last').val(); addCommentForm.load('?page=comment-add&tid=' + tid + '&offset=' + offset, {comment: comment}, function() { var location = jQuery('input#redirect-location').val(); if (location != undefined) window.location.reload(location); else { jQuery('input#comment-add').click(function() { RefreshCommentAddForm(); }) } }) } function RefreshCommentEditForm() { var edComment = jQuery('textarea#comment').val(); editForm.load('?page=comment-edit&tid=' + tid + '&offset=' + offset + '&id=' + id, {comment: edComment}, function() { var location = jQuery('input#redirect-location').val(); if (location != undefined) { editableBlock.slideUp(600); window.location.reload(location); } else { jQuery('input#comment-edit').click(function() { RefreshCommentEditForm(); }) } }) } function RefreshTopicEditForm() { editForm.load('?page=topic-edit&tid=' + tid, {topic_name: jQuery('input#topic-name').val(), topic_description: jQuery('input#topic-description').val(), topic_message: jQuery('textarea#topic-message').val()}, function() { var location = jQuery('input#redirect-location').val(); if (location != undefined) { editableBlock.slideUp(600); window.location.reload(location); } else { jQuery('input#topic-edit').click(function() { RefreshTopicEditForm(); }) } }) } function RefreshMessageEditForm() { editForm.load('?page=topic-edit&tid=' + tid, {topic_message: jQuery('textarea#topic-message').val()}, function() { var location = jQuery('input#redirect-location').val(); if (location != undefined) { editableBlock.slideUp(600); window.location.reload(location); } else { jQuery('input#topic-edit').click(function() { RefreshMessageEditForm(); }) } }) } jQuery(document).ready(function() { addCommentForm = jQuery('#add-comment-form'); editableBlock = jQuery('#editableBlock'); editForm = jQuery('#edit-form'); formHeader = jQuery('#formHeader'); tid = jQuery('input#tid').val(); offset = jQuery('input#offset').val(); editableBlock.hide(); addCommentForm.load('?page=comment-add' , {}, function() { jQuery('input#comment-add').click(function() { RefreshCommentAddForm(); }) }) jQuery('a.comment-edit').click(function() { var link = jQuery(this); id = link.attr('id'); var block = link.parent().parent(); editableBlock.html( '<div class="editHeader">редактируемый комментарий | ' + '<a class="ResetEdit" onclick="ResetEdit();" href="javascript: void(0);">' + 'отменить редактирование</a></div>').append(jQuery('#comment-content', block).html()); editForm.load('?page=comment-edit&id=' + id, {}, function() { jQuery('input#comment-edit').click(function() { RefreshCommentEditForm(); }) }) formHeader.text('РЕДАКТИРОВАНИЕ КОММЕНТАРИЯ'); addCommentForm.empty(); editableBlock.slideDown(600); }) jQuery('a.comment-delete').click(function(event) { var responce = confirm('Вы действительно хотите удалить этот комментарий?'); if (!responce) event.preventDefault(); }) jQuery('a.topic-edit').click(function() { var blockHtml = jQuery('#captionTopicName').html() + '<br />' + jQuery('#captionTopicDescription').html() + '<br />' + jQuery('#topic-message').html(); editableBlock.html( '<div class="editHeader">редактируемая тема | ' + '<a class="ResetEdit" onclick="ResetEdit();" href="javascript: void(0);">' + 'отменить редактирование</a></div>').append(blockHtml); editForm.load('?page=topic-edit&tid=' + tid, {}, function() { jQuery('input#topic-edit').click(function() { RefreshTopicEditForm(); }) }); formHeader.text('РЕДАКТИРОВАНИЕ ТЕМЫ'); addCommentForm.empty(); editableBlock.slideDown(600); }) jQuery('a.topic-delete').click(function() { var responce = confirm('Вы действительно хотите удалить эту тему?'); if (!responce) event.preventDefault(); }) jQuery('a.message-edit').click(function() { var blockHtml = jQuery('#topic-message').html(); editableBlock.html( '<div class="editHeader">редактируемое сообщение | ' + '<a class="ResetEdit" onclick="ResetEdit();" href="javascript: void(0);">' + 'отменить редактирование</a></div>').append(blockHtml); editForm.load('?page=topic-edit&tid=' + tid, {}, function() { jQuery('input#topic-edit').click(function() { RefreshMessageEditForm(); }) }); formHeader.text('РЕДАКТИРОВАНИЕ СООБЩЕНИЯ'); addCommentForm.empty(); editableBlock.slideDown(600); }) }) В опере и гугл-хроме скрипт работает нормально, IE выдает "Объект не поддерживает это свойство или метод (строка 106, символ 3)". Это он ругается на editableBlock = jQuery('#editableBlock'); Объсните плиз, причину |
Пугающий объем.....
|
Ничего подобного... Вовсе не на эту строку... Покажите полностью вызывающий код.
|
MadGest,
объем из-за стиля написания кода inGray, именно на эту. Я проверял, добавляя пустые строки в код. Что имеется ввиду под "вызывающий код" ? Если js - то я привел код полностью |
EditForm случайно не айдишник формы?
|
inGray,
не, editForm - айдишник дива comment-list.php ... <div id="edit-form"></div> ... |
точнее не айдишник дива, а объект, получаемый по id="edit-form", т.е. div
|
Попробуйте поменять имена переменных editableBlock и editForm?
|
inGray,
просто сменить имена на другие? А разве это может быть причиной? Ведь в других браузерах все нормально работает... |
Да, просто сменить имена? Ругается же именно на имя переменной...
|
inGray,
странно, поменял (просто добавил "1" в конце имени переменных), теперь ругается на formHeader = jQuery('#formHeader'); поменять имя тоже? Чесно говоря, ума не приложу, что это за странност такие... |
Думаю есть стандартный объект с соответствующим именем или айдишником
|
пришлось менять все имена, т.к. ругался он на все... Теперь все работает нормально, только у меня вопрос - из-за чего весь этот бред? Какое-нибудь кэширование может?
|
inGray,
Думаю есть стандартный объект с соответствующим именем или айдишником да ну, не может быть такого... На все переменные ругался |
inGray,
ты не в курсе, может причина в каком-либо кэшировании? |
Покажите конечный ХТМЛ?
|
<html> <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type" /> <link href="css/common.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="http://127.0.0.1/forum/js/jquery.js"></script> <script type="text/javascript" src="http://127.0.0.1/forum/js/menu.js"></script> </head> <body> <script type="text/javascript" src="http://127.0.0.1/forum/js/comment-list.js"></script> <script type="text/javascript" src="http://127.0.0.1/forum/js/bbtags.js"></script> <div class="mainMenu"> <a class="mainMenuItem" href="http://127.0.0.1/forum/?page=logout">выход</a><br /> <a class="mainMenuItem" href="http://127.0.0.1/forum/">домой</a><br /> <a class="mainMenuItem" href="http://127.0.0.1/forum/?page=registration">регистрация</a><br /> <a class="mainMenuItem" href="http://127.0.0.1/forum/?page=topic-list">форум</a><br /> </div> <div class="caption"> <div id="captionTopicName">тема номер 5</div> <div id="captionTopicDescription">описание</div> </div> <table class="list" cellspacing=0> <tr> <td class="postedTime" colspan=2>Отправлено: 2010-09-18 21:41:12</td> </tr> <tr> <td class="userProfile"> <div id="userNickname">Невидимка</div> <a href="http://127.0.0.1/forum/?page=show-avatar&id=23" target="_blank"> <img class="avatar" src="http://127.0.0.1/forum/avatars/23.jpg" name="avatar" alt="Аватар" title="показать в исходном качестве" /> </a> <div id="userRole">Администратор</div> <br />Зарегистрирован: <br />2010-09-04 14:26:29<br /> Сообщений: 6 </td> <td class="message"> <div id="topic-message">сообщение</div> <p> [<a class="reply" id="23" href="#form">ответить</a>] [<a class="topic-edit" href="#edit-form">редактировать тему</a>] [<a class="topic-delete" href="http://127.0.0.1/forum/?page=topic-delete&tid=18">удалить тему</a>] </p> <br /><br /> </td> </tr> <tr> <td class="postedTime" colspan=2>Отправлено: 2010-09-18 21:49:54</td> </tr> <tr> <td class="userProfile"> <div id="userNickname">Невидимка</div> <a href="http://127.0.0.1/forum/?page=show-avatar&id=23" target="_blank"> <img class="avatar" src="http://127.0.0.1/forum/avatars/23.jpg" name="avatar" alt="Аватар" title="показать в исходном качестве" /> </a> <div id="userRole">Администратор</div> <br />Зарегистрирован: <br />2010-09-04 14:26:29<br /> Сообщений: 6 </td> <td class="message"> <div id="comment-content">comment 1</div> <p> [<a class="reply" id="23" href="#form">ответить</a>] [<a class="comment-edit" id="97" href="#edit-form">редактировать комментарий</a>] [<a class="comment-delete" href="http://127.0.0.1/forum/?page=comment-delete&tid=18&offset=0&id=97">удалить комментарий</a>] </p> <br /><br /> </td> </tr> </table> <div class="caption" id="formHeader">ДОБАВЛЕНИЕ КОММЕНТАРИЯ</div> <div id="editableBlock"></div> <table id="bbtags-panel" cellspacing=0> <tr> <td class="bbtags-cell"><span class="bbtags-label">BB-коды</span></td> <td class="bbtags-cell"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/bold.gif" alt="жирный" title="жирный" onclick="tag('[B]','[/B]')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/italics.gif" alt="курсив" title="курсив" onclick="tag('[I]','[/I]')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/underline.gif" alt="подчеркнутый" title="подчеркнутый" onclick="tag('[U]','[/U]')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/strikethrough.gif" alt="зачеркнутый" title="зачеркнутый" onclick="tag('[S]','[/S]')"> </td> </tr> <tr> <td class="bbtags-cell"><span class="bbtags-label">смайлы</span></td> <td class="bbtags-cell"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/1.gif" alt=":-)" title=":-)" onclick="tag(':-)','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/2.gif" alt=":-(" title=":-(" onclick="tag(':-(','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/3.gif" alt=";-)" title=";-)" onclick="tag(';-)','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/4.gif" alt=":-D" title=":-D" onclick="tag(':-D','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/5.gif" alt="8-)" title="8-)" onclick="tag('8-)','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/6.gif" alt="=-O" title="=-O" onclick="tag('=-O','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/7.gif" alt=">:o" title=">:o" onclick="tag('>:o','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/8.gif" alt=":-|" title=":-|" onclick="tag(':-|','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/9.gif" alt="]:->" title="]:->" onclick="tag(']:->','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/10.gif" alt="[:-}" title="[:-}" onclick="tag('[:-}','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/11.gif" alt=":TIRED:" title=":TIRED:" onclick="tag(':TIRED:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/12.gif" alt=":STOP:" title=":STOP:" onclick="tag(':STOP:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/13.gif" alt=":THUMBS UP:" title=":THUMBS UP:" onclick="tag(':THUMBS UP:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/14.gif" alt="@=" title="@=" onclick="tag('@=','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/15.gif" alt=":HELP:" title=":HELP:" onclick="tag(':HELP:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/16.gif" alt=":COOL:" title=":COOL:" onclick="tag(':COOL:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/17.gif" alt="%)" title="%)" onclick="tag('%)','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/18.gif" alt=":OK:" title=":OK:" onclick="tag(':OK:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/19.gif" alt=":BRAVO:" title=":BRAVO:" onclick="tag(':BRAVO:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/20.gif" alt=":ROFL:" title=":ROFL:" onclick="tag(':ROFL:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/21.gif" alt=":NO:" title=":NO:" onclick="tag(':NO:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/22.gif" alt=":DONT KNOW:" title=":DONT KNOW:" onclick="tag(':DONT KNOW:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/23.gif" alt=":YAHOO:" title=":YAHOO:" onclick="tag(':YAHOO:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/24.gif" alt=":HI:" title=":HI:" onclick="tag(':HI:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/25.gif" alt=":BYE:" title=":BYE:" onclick="tag(':BYE:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/26.gif" alt=":YES:" title=":YES:" onclick="tag(':YES:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/27.gif" alt=":WRITE:" title=":WRITE:" onclick="tag(':WRITE:','')"> <img class="smile" src="http://127.0.0.1/forum/images/smiles/28.gif" alt=":SCRATCH:" title=":SCRATCH:" onclick="tag(':SCRATCH:','')"> </td> </tr> </table> <div id="add-comment-form"></div> <div id="edit-form"></div> <input type="hidden" id="tid" value="18" /> <input type="hidden" id="offset" value="0" /> </body> </html> |
Непонятно..... Я в замешательстве...
|
только что обнаружил еще несколько проблем с этим скриптом, возникающих только в IE..
|
inGray
Все равно, спасибо большое, что уделил время +1. Попробую сам пока разобраться.. |
Если кто знает причину данного шита, напишите плиз
|
Нужно чтоб идентификаторы элементов все были уникальны, тогда браузеры, точно следующие правилам, ругаться не будут. Например заметил такую ошибку 2 раза userNickname
Хотя не уверен что правильно понял вопрос :) |
sysya,
да, но я ведь вообще не использую этот элемент в скрипте. Все использующиеся в данном коде элементы имеют уникальные идентификаторы |
А что если сделать не так jQuery('#edit-form') а так $('#edit-form')
|
inGray, сложно объяснять, да? ;)
Что по теме: ТС выстави хотя бы на хостинг или прикрепи сюда свой скрипт, что гадать то на кофейной гуще когда есть дебагеры. |
sysya,
попробовал заменить jQuery на $ - результатов не дало micscr, думаю до хостинга мой "чудо-скрипт" еще не дорос, поэтому прикрепляю архив. В базу записан один юзер - администратор (логин - admin, пароль - 123456), одна топик и один комментарий к нему. |
Чесно говоря не понял, получилось ли прикрепить файл... Вроде прикрепил, но че-то не вижу его в комменте...
|
Вложений: 1
Все, разобрался, оказывается я rar-архив прикреплял, а надо zip... Вот:
|
выставлять надо не все приложение а страничку с проблемой - проблема же в js - вот этот html + js и нужен. Настраивать и загружать дамп - никто не будет.
p.s. Хостинг есть и бесплатный. проблема что ли. |
понял, попозжа залью
|
Часовой пояс GMT +3, время: 12:05. |