Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Замена слов по нажатию на ссылку
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (2): [1] 2 » 

> Без описания
UFO
Отправлено: 25 Августа, 2010 - 16:05:27
Post Id



Full Member


Покинул форум
Сообщений всего: 212
Дата рег-ции: Янв. 2005  

Карма 0




Привет всем!

Необходимо без обновления страницы заменить на ней много текста в разных частях, для этого я стал использовать такой вот код
CODE:
<script type="text/javascript" src="jquery-1.3.2.js"></script>
<script type="text/javascript">
<!--
$(function() {
$('a').click(function() {
$('div.elementToReplace').replaceWith('<div>Я заменяю блок</div>');
return false;
});
});
//-->
</script>
<body>
<a href="#">link</a><div class="elementToReplace">блок</div>
</body>

Все заменяется, но есть проблема, при замене вдруг перестают работать все ссылки на странице, указатель мыши мутирует в руку, но при клике никаких изменений.
jQuery использую именно 1.3.2.
В чем может быть проблема?
 
 Top
Ray Wen Администратор
Отправлено: 25 Августа, 2010 - 16:53:09
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




JQuery работает с DOM... нафига заменять блок? Замени только текст командой .text или .html... Это первый момент, второй, если скрипты выше загружаемой области, нужно вставлять их в
CODE:
jQuery(document).ready(function(){ ... });
, иначе при работе скрипта элементы DOM могут быть ещё не загружены и не готовы...

Желательно использовать JQ 1.4.2...
 
 Top
UFO
Отправлено: 25 Августа, 2010 - 17:01:07
Post Id



Full Member


Покинул форум
Сообщений всего: 212
Дата рег-ции: Янв. 2005  

Карма 0




Ray Wen пишет:
JQuery работает с DOM... нафига заменять блок? Замени только текст командой .text или .html... Это первый момент, второй, если скрипты выше загружаемой области, нужно вставлять их в
CODE:
jQuery(document).ready(function(){ ... });
, иначе при работе скрипта элементы DOM могут быть ещё не загружены и не готовы...

Желательно использовать JQ 1.4.2...

А как выглядят эти команды полностью? Я очень плохо разбираюсь в JS Недовольство, огорчение
И что такое загружаемая область?
jquery обновил - не помогло.

(Отредактировано автором: 25 Августа, 2010 - 17:01:30)

 
 Top
Ray Wen Администратор
Отправлено: 26 Августа, 2010 - 01:42:50
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




http://jquery-docs.ru/ - раз уж взялся изучать... С JQ не обязательно хорошо знать JS, я сам его толком не знаю...

CODE:
$(document).ready(function(){
$('a').click(function() {
$('div.elementToReplace').text('Я заменяю блок');
return false;
});
});
 
 Top
UFO
Отправлено: 26 Августа, 2010 - 04:10:08
Post Id



Full Member


Покинул форум
Сообщений всего: 212
Дата рег-ции: Янв. 2005  

Карма 0




Я разобрался в чем дело, ведь у меня в коде
CODE:
$('a').click(function() {

таким образом все ссылки в теге <a> попадают под действие JS, поэтому ссылки и перестали работать, сделал вот так:

CODE:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
<!--
$(document).ready(function(){
$('span.link').click(function() {
$('div.block1').replaceWith('<div>заменяю блок</div>');
return false;
});
});
//-->
</script>
<a href="#"><span class="link">щелкнуть</span></a><br>
<div class="block1">блок</div>

и всё заработало.
Оставил все же replaceWith, он мне больше нравится и под него уже все настроено Улыбка

Спасибо, Ray Wen, за помощь и ссылку! Подмигивание Я и вправду понял, что с JQ можно делать многое всего парой строчек кода.
 
 Top
Ray Wen Администратор
Отправлено: 26 Августа, 2010 - 04:35:38
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




В твоём варианте два минуса: Клик по span не такая уж правильная идея, тогда уж без ссылки, но вообще какой тогда смысл, если можно класс на ссылку задать? При замене блока ты так же убираешь идентификатор, повторно его найти уже нельзя будет...
 
 Top
UFO
Отправлено: 26 Августа, 2010 - 07:07:25
Post Id



Full Member


Покинул форум
Сообщений всего: 212
Дата рег-ции: Янв. 2005  

Карма 0




Ray Wen пишет:
В твоём варианте два минуса: Клик по span не такая уж правильная идея, тогда уж без ссылки, но вообще какой тогда смысл, если можно класс на ссылку задать? При замене блока ты так же убираешь идентификатор, повторно его найти уже нельзя будет...

Но мне не нужно чтобы все ссылки производили замену слов на странице, только одна определенная, но надо чтобы было видно, что это кликабельная ссылка.
Да, индентификаторы убираются, поэтому нельзя все заменить обратно, но вообщем-то и не надо - нашел выход, просто обновляю страницу и все снова, как было.
 
 Top
Ray Wen Администратор
Отправлено: 26 Августа, 2010 - 08:22:40
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




Проще всего делать всё изначально правильно... Улыбка В данном случае логичнее пользоваться функциями .html и .text, а на ссылку поставить класс, по которому ты находишь span, иначе бы все span кликались и делали эти действия...

Но в общем-то дело твоё, это просто совет... Улыбка
 
 Top
UFO
Отправлено: 26 Августа, 2010 - 10:20:09
Post Id



Full Member


Покинул форум
Сообщений всего: 212
Дата рег-ции: Янв. 2005  

Карма 0




span то тоже с классом, почему все кликнутся? Улыбка
 
 Top
Ray Wen Администратор
Отправлено: 26 Августа, 2010 - 12:09:31
Post Id



Собиратель шишек...


Покинул форум
Сообщений всего: 2602
Дата рег-ции: Янв. 2005  
Откуда: Волгоград

Карма 21




Ну я конечно не знаю, может у меня это уже профессиональная деформация, но нужно чтобы всё было как можно проще... В данном случае у тебя кликались ссылки, но вместо того, чтобы дать класс или даже ID ссылке, ты зачем-то сунул в неё span и задал класс ему... Где логика? Просто это само по себе не правильно, вставлять span для события, а ссылку для внешнего вида... обычно оно должно быть на оборот как-то...
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 4 (гостей: 4, зарегистрированных: 0, скрытых: 0)
« JavaScript »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0444]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33