我想了解this jsFiddle的輸出。爲什麼這些JavaScript函數未定義?
我正在通過Google's CDN加載jQuery UI,使用左側的「外部資源」選項。
有些東西我百思不得其解......
jQuery UI的部分作品。我可以拖動「拖動我」div。
所以jQuery UI
.draggable()
(docs)很好。另一方面
.button()
(docs)不適用jQuery UI主題CSS。爲什麼會
.draggable()
工作,但不是.button()
? (語法錯誤?)draggable
怎麼可能是undefined
?它的作品,所以它必須是一個功能,對吧?
click
怎麼樣undefined
?click()
來自jQuery,而$
是一個函數。click
也不是嗎?
這裏的JS ...
(function() {
$(document).ready(function() {
$('.dr').draggable();
$('.btn').button();
$('.btn').click(function(event) {
alert('Clicked');
});
$('.output').append('typeof $: ' + typeof $ + '<br />');
$('.output').append('typeof draggable: ' + typeof draggable + '<br />');
$('.output').append('typeof click: ' + typeof click + '<br />');
$('.output').append('typeof button: ' + typeof button + '<br />');
});
}());
我得到的輸出是...
typeof $: function // As expected.
typeof draggable: undefined // How can it be undefined and still work?
typeof click: undefined // ???
typeof button: undefined
你爲什麼認爲$('...').draggable'可以被引用爲'draggable'?這不是JavaScript的工作原理。 – Xufox