Я надеялся, что я прошел мимо этого... но почему это изменение размера не определено нажатием кнопки?
$(document).ready(function(){
var w = [320, 480];
var h = [480, 620];
function resize (input){
$("scale").width(w[input]);
$("scale").height(h[input]);
}
$.each(w, function(i, val){
$("<button onclick='resize("+i+")'>"+val+"</button>").appendTo("body");
});
});
Потому что его внутри document.ready функция.
Для просмотра DOM вам нужно иметь функцию изменения размера на глобальном уровне.
Однако лучший способ сделать это - использовать функцию jQuery "on".
function resize
существует только в области обратного вызова onReady, который вы передаете в document.ready
... Для этого требуется существование "выше вверх"/"более глобально", или что-то, что упоминает @blazemonger, связать его напрямую, а не используя атрибут onclick = html
.on('click', function(){...})
вместо этого, если вы используете jQuery. api.jquery.com/onresize
не является глобальной функцией.