Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 07.06.2010, 11:50
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

В таком случае можно добавить проверку на кол-во всех потомков элемента.
Ответить с цитированием
  #22 (permalink)  
Старый 07.06.2010, 12:02
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

exec, отлично Еще пример (взял с jqueri api, влом придумывать):
$("button").click(function() {
    $(this).replaceWith("<div>" + $(this).text() + "</div>");
});
Ответить с цитированием
  #23 (permalink)  
Старый 07.06.2010, 12:26
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

Так тут вроде проверка на кол-во потомков сработает — jQuery сначала создаёт новый элемент, вставляет его после нужного узла и удаляет старый. Кол-во потомков должно меняться два раза.

UPD: Описанные выше действия происходят так быстро, что setInterval не успевает их засечь. Но, думаю, всё равно можно какой-нибудь костыль придумать.

Последний раз редактировалось exec, 07.06.2010 в 12:55.
Ответить с цитированием
  #24 (permalink)  
Старый 07.06.2010, 13:45
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

exec, DOM Mutation Event уже придумали за Вас А костыли -- они для инвалидов, в конце концов.
Ответить с цитированием
  #25 (permalink)  
Старый 09.06.2010, 12:15
Аспирант
Отправить личное сообщение для amigo* Посмотреть профиль Найти все сообщения от amigo*
 
Регистрация: 25.05.2010
Сообщений: 39

Воспользовался методом exec, за что ему спасибо. Ни .ajaxSuccess(), ни .ajaxError() не реагировали на get запрос, который шёл по умолчанию. Когда я подменил этот запрос своим (отправлял его первым), то срабатывал .ajaxError(), в теле ответа которого ничего не было, хотя в firebuge был виден ответ сервера + статус 200.
Ответить с цитированием
  #26 (permalink)  
Старый 09.06.2010, 15:44
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,577

Я еще тогда но не сильно вникая смотрел, что это не ajax запрос походу - так как на другой домен. Наверное - через <script> и innerHTML.
Если использовал метод exec то добавлял следующую строку ? :

var old = node.innerHTML;
setInterval(function () {
if (node.innerHTML != old) {
var old = node.innerHTML;
/* handler */
}
}, 100);
Ответить с цитированием
  #27 (permalink)  
Старый 09.06.2010, 16:16
Аспирант
Отправить личное сообщение для amigo* Посмотреть профиль Найти все сообщения от amigo*
 
Регистрация: 25.05.2010
Сообщений: 39

Вот так делал:

function resultset_link()
{
	var old = $('#resultset').eq(0).html();
	var inter=setInterval(function () 
    {
		if ($('#resultset').eq(0).html() != old) 
		{
			/*handler;*/
			clearInterval(inter); 
		}
	}, 100);
};


Там есть вызов такого типа: $.remoteScript('get', param1,{},param2).
Только вот синтаксис этой функции на jquery.com я не нашёл.

Последний раз редактировалось amigo*, 09.06.2010 в 16:25.
Ответить с цитированием
  #28 (permalink)  
Старый 09.06.2010, 16:22
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,577

ну так нормально - если засечь только как один раз вначале отработает. Так же надо было?
Ответить с цитированием
  #29 (permalink)  
Старый 09.06.2010, 16:54
Аспирант
Отправить личное сообщение для amigo* Посмотреть профиль Найти все сообщения от amigo*
 
Регистрация: 25.05.2010
Сообщений: 39

да. обработчик должен был отработать только один раз.
Есть ещё вопрос, который было бы интересно узнать... как в этих библиотеках используется JQuery, при этом не подгружая библиотеку на клиента?
Ответить с цитированием
  #30 (permalink)  
Старый 09.06.2010, 16:56
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,577

Ага, я уже посмотрел - ты в обработку нажатия кнопки вызов этой функции запихнул. Работает - и нормально.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Событие onClick при нажатии пункта меню Lex4e Общие вопросы Javascript 1 25.06.2010 18:31
Не срабатывает при отсутствии в теле документа yuriii jQuery 3 06.05.2010 17:45
выполнение ф-ии при изменении состояния radio MaxB Events/DOM/Window 5 24.06.2009 14:24
Событие mouseout при наведении мыши на пункт меню WalterScott Events/DOM/Window 2 12.05.2009 22:05
Не отрабатывает событие onmouseout при внедрении нового слоя ilshat Элементы интерфейса 3 28.07.2008 06:27