#1 14.05.12 16:46
jQuery + delegate + ie9
есть к примеру html код
Код::
<div class ="req"> <button class="menu_btn" id="table-btn"><a href="/page.php" id="link1">Link</a></button> </div>
Есть так же JavaScript на jQuery 1.7.2 или 1.7.1
Код::
$(document).ready(function(){
$('.req').delegate("button","click",function () {
var url = $(this).find('a').attr('href');
alert(url);
if (url !== undefined) { // require a URL
alert(url); // redirect
}
return false;
});
});Дэк вот, в FireFox и Chrome этот код выдает "/page.php", в Internet Explorer indefined
Понятно, что в ie9 переменная this пустая. Как сделать этот код рабочим для ie9?
Проверить код можно тут http://jsfiddle.net/
Offline
#3 15.05.12 02:02
Re: jQuery + delegate + ie9
this не может быть пустой.
Зачем пихать в кнопку ссылку?
Если тебе просто нужен урл, то храни его в дата-атрибуте кнопки.
Offline

