Я пытаюсь отключить изображения при загрузке, чтобы его нельзя было щелкнуть. Ниже код работает над IE, но не в другом браузере, таком как firefox, chrome и safari.
jQuery('#playersTable > tbody > tr').each(function() {
jQuery(this).find('td').each (function() {
jQuery(this).find('img').each(function () {
jQuery(this).attr('disabled','disabled');
})
});
});
disabled не является допустимым атрибутом для тега img
http://www.w3.org/wiki/HTML/Elements/img
Лучше всего просто добавить класс к родительскому изображению. тогда, когда onload, изображения, которые вы не хотите активировать, будут возвращены false из-за проверки внутри обработчика события click
// add this before page loads
jQuery('#playersTable').addClass('img-disabled');
// returns false if the images parent #playersTable has the img-disabled class
jQuery('#playersTable').on('click', 'img',function(){
if(jQuery(this).parents('#playersTable').hasClass('img-disabled')){
return false;
}
// do code stuff
return false
});
затем, когда страница загружена, вы можете удалить класс img-disabled
jQuery('#playersTable').removeClass('img-disabled');
..
Вам не нужен другой each()
на теге img
, попробуйте следующее:
jQuery('#playersTable > tbody > tr').each(function() {
jQuery(this).find('td').each (function() {
jQuery(this).find('img').attr('disabled','disabled');
});
});