вопрос по функциям
Доброго времени суток,
возник нубский вопрос... в литературе вижу что "по правильному" будет такой вариант: $(function(){ $("#a").attr({ "alt": "альтернатива", "title": "тайтл", "href": "http://lalala.ru" }).click(function(){ alert($(this).attr("alt")); return false; }); }); но руки чешутся делать так: $("#a").click(function() { $("#a").attr({ "alt": "альтернатива", "title": "тайтл", "href": "http://lalala.ru" }); alert($(this).attr("alt")); return false; }); будет ли 2й вариант говнокодом и почему? |
NeVirus,
эти 2 записи у вас разные, они могу выполнять разные вещи, в 1-ом варианте вы задали событие ко всем элементам тэга <a> и он отработает сразу после загрузки страницы, кроме клика конечно, а во 2-ом вы задали событие только 1-му элементу с id this и он отработает только после события клик, как вам надо то? |
пардон, просто писал на скорую руку и чуть чуть ошибся... суть проста клик на что то с айдишником "а" вызывает замену его атрибутов. Меня интересует именно правильность формы ... 1й или 2й вариант лучше и почему
|
NeVirus,
по мне так 2-ой только не так, а вот так $("#a").click(function() { $(this).attr({ "alt": "альтернатива", "title": "тайтл", "href": "http://lalala.ru" }); alert($(this).attr("alt")); return false; }); |
ну, как я понимаю, "#a" равносильно "this" в моем примере (кликаем же по нему), так что это все равно...
мне тоже 2й вариант больше нравится, и раз с ним косяков нету, то так и буду делать значит. спасибо |
Цитата:
$("#a").click({ $(this).prop({ alt: 'альтернатива', title: 'тайтл', href: 'http://lalala.ru' }); alert(this.alt); return false; }); |
Ruslan_xDD,
это сейчас он так задан, потому что он исправил свою ошибку |
Часовой пояс GMT +3, время: 15:13. |