![](/img/trans.png)
[英]JQuery ui how to make certain elements in a selectable not selectable
[英]How to implement toggle functionality on JQuery UI Selectable?
由於所有的類回調,你不會比這更好:
$(function () {
$("#selectable").selectable({
selected: function (event, ui) {
if ($(ui.selected).hasClass('click-selected')) {
$(ui.selected).removeClass('ui-selected click-selected');
} else {
$(ui.selected).addClass('click-selected');
}
},
unselected: function (event, ui) {
$(ui.unselected).removeClass('click-selected');
}
});
});
如果您在單擊時按住Ctrl鍵,則可以使用jQuery UI選擇該功能。
如果你真的需要它作為默認功能,你不需要使用selectable,你可以像一個簡單的onclick處理程序一樣,就像nolabel建議的那樣。
或者......您也可以編輯jquery.ui.selectable.js並添加一個可以滿足您需求的選項。 不應該太難,有4個地方檢查event.metaKey ,確保如果你的選項設置,只需運行代碼路徑,就像event.metaKey始終為true一樣。
由於可選項可以使用更多自定義,您還可以為jQuery UI開發人員提供功能請求,以將其包含在下一個正式版本中。
您必須在代碼中注入兩個簡單元素才能實現您想要的效果。 只要您需要反轉/切換功能,這只會反轉metaKey布爾值。
options: {
appendTo: 'body',
autoRefresh: true,
distance: 0,
filter: '*',
tolerance: 'touch',
inverted: false /* <= FIRST*/
},
_mouseStart: function(event) {
var self = this;
this.opos = [event.pageX, event.pageY];
if (this.options.disabled)
return;
var options = this.options;
if (options.inverted) /* <= SECOND*/
event.metaKey = !event.metaKey; /* <= SECOND*/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.