2016-04-08 2 views
0

У меня следующий сценарий. Он работает до загрузки img, я использую загрузку метода.Как я могу заставить скрипт работать после загрузки img?

$(document).ready(function() { 
    $('.slide-img img').load(function(){ 
    var height = $(this).height(); 
    var width = $(this).width(); 
    if (width > height) { 
     $(this).attr('style', 'max-height: 100%'); 
    }; 
    if (height > width) { 
     $(this).attr('style', 'max-width: 100%'); 
    }; 
    }); 
}); 

Как я могу заставить скрипт работать после загрузки img?

+1

http://stackoverflow.com/questions/280049/javascript- callback-for-know-when-an-image-загружен –

+0

Для этой цели вы можете проверить некоторые библиотеки предварительной загрузки изображений. Вы запускаете код только тогда, когда DOM готов. http://www.createjs.com/preloadjs может быть излишним, но определенно является вариантом. –

+0

Ваш код кажется прекрасным. Проверьте правильность выбора. –

ответ

0

метод использования window.load (JQuery):

$(window).load(function() { 
// this will fire after the entire page is loaded, including images 
}); 

Или использовать window.onload метод (JavaScript):

window.onload = function() { 
// this will fire after the entire page is loaded, including images 
}; 
+0

Спасибо за ваш ответ! но это тоже не работает, или я ошибся. смотрите здесь, пожалуйста - https://jsfiddle.net/kino45/jo82d6pw/1/ –

+0

вы добавляете jquery в свой jsfiddle. Проверьте мой код: http://codepen.io/anon/pen/RaxyGQ – Sumanta736

+0

Не включайте функцию загрузки изображения, $ (окно) .load заботится о загрузке изображения. проверьте мой раздел комментариев комментариев. – Sumanta736

Смежные вопросы