Я попытался все решения, которые я нашел здесь, но никто не работает для меня ..Используйте переменную вне анонимной функции
var img = $("#img");
var width, height;
$("<img/>")
.attr("src", $(img).attr("src"))
.load(function() {
width = this.width;
height = this.height;
alert(width + "*" + height) ; // works
});
alert(width + "*" + height) ; // undifined*undifined !! :(
Как вы можете видеть, что нужно использовать ширину высота & снаружи ...
Я ПОВТОРЯЮ: Я ПЫТАЛ О 6-7 РЕШЕНИЯХ ОТ StackOverFlow! Может быть, я не сделал их хорошо ... во всяком случае, они не сработали.
Что мне делать? Tnx.
Решение: не используйте 'height' и' width' вне обратного вызова. Все виды использования переменных должны находиться внутри функции обратного вызова 'load', которая может не срабатывать в течение нескольких секунд. Если у вас есть код, который должен использовать 'height' и' width', поместите * all * этого кода внутри обратного вызова. Если вы не можете поместить свой код в обратный вызов, пожалуйста ** укажите больше контекста **, чтобы точно объяснить, почему вы не можете. – apsillers