我需要將調整大小事件的變數 "blabla "傳遞給停止事件,我如何做到這一點?
謝謝你,這里有一部分代碼來解釋我需要的東西:
.resizable( {
disabled: disablePoignee,
handles: poignees,
resize: function (e, ui) {
var blabla = "pioup"/span>;
},
stop:function(e,ui){
//try to get blabla[/span]。
}});
提前感謝您的幫助
uj5u.com熱心網友回復:在這個代碼中...
.resizable( {
disabled: disablePoignee,
handles: poignees,
resize: function (e, ui) {
var blabla = "pioup"/span>;
},
stop: function(e,ui) {
//嘗試獲得blabla。
}});
...變數blabla只在傳遞給options物件的resize屬性)的resizable插件函式中可用。這個值被封裝起來--基本上是隱藏的--不被世界上的其他人看到。
要 "解除 "它,你有兩個選擇。首先,讓這個變數在resize和stop函式的范圍之外:
var blabla; // or const, or let.
// ...
.resizable({
resize: function (e, ui) {
blabla = "pioup"; //注意這里不應該使用`var`,因為現有的變數被重復使用。
},
stop。function(e, ui) {
doSomethingWith(blabla)。
}});
然而,如果在你的代碼中創建了一個以上的resizable實體,并且每一個實體都應該使用它自己的blabla值,那么這將不起作用。在這種情況下,采用第二種方案可能是有用的--為托管該插件的jQuery物件分配一些自定義屬性:
.resizable( {
resize: function (e, ui) {
ui.originalElement.data('blabla', 'someValue') 。
},
stop。function(e, ui) {
doSomethingWith(ui.originalElement.data('blabla') ) 。
}});
這種方法的好處是,即使插件被銷毀,資料也會一直附著在這個物件上。
uj5u.com熱心網友回復:
考慮一下下面的例子。
。$(function() {
$("#resizable"/span>).resizable({
resize: function(e, ui) {
$(this)。 data("foo", "bar-" $(this).width()。
},
stop。function(e, ui) {
console.log($(this).data("foo"))。
}
});
});
#resizable {
width: 150px;
height: 150px;
padding: 0.5em;
}
#resizable h3 {
text-align: center;
margin: 0;
}
< link rel="styleheet" href="/code. jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code. jquery.com/jquery-1.12.4.js"></script>
<script src="https://code. jquery.com/ui/1.12.1/jquery-ui.js"></script>
< div id="resizable" class="ui-widget-content">
<h3 class="ui-widget-head"> Resizable</h3>
</div>
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
與其創建一個更全域的變數,你可以使用jQuery Data。
存盤與匹配元素相關的任意資料,或者在命名的資料存盤處回傳匹配元素集合中第一個元素的值。
通過這個,我們可以為每個元素設定和獲取資料。如果您只有一個可調整大小的元素,這并不是什么大問題。如果你有許多可調整大小的專案,這對鞏固你的腳本非常有幫助。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/319925.html
標籤:
