Показать сообщение отдельно
  #1 (permalink)  
Старый 21.12.2012, 12:49
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Вызывать функцию для нескольких элементов
Добрый день!!
Не могу допереть,буду очень благодарен за совет,направление!
Это небольшой код для простоты:
две условных кнопки btn - каждая из них добавляет рядом с собой span-кнопку(cll), по которой в исходный btn добавляется текст "test"
<br><span class="btn">btn1</span>
<br><span class="btn">btn2</span>

пишем плагин
$.fn.btn = function(){
	var th = this; //ссылка на btn вызвавший ф-ю
		th.click(function() {
	console.log(this.tagName +' '+ this.id); //Id - пусто?

			$('<span class="cll">123</span>').insertAfter(this);
			
			$('.cll').live('click',function() {
				th.append('test'); //текст который вставляется в th
			});
});			
		
};


$('.btn').hover(function() {
 $(this).btn(); //вызов
});

так вот проблема в том что если вызвать метод $.fn.btn на обоих кнопках,то текст уже вставляется сразу в два btn, а должен только в один.
Задача стоит-при наведении мышкой (или клике) вызвать "панель инструментов"(cll) и по клику на элемент панели вставить в поле(btn).
подскажите как правильно навесить свой метод!
Ответить с цитированием