是否有可能停止與複選框(開/關)的jQuery功能?那裏有任何例子嗎?是否有可能通過複選框停止jQuery函數(開/關)?
回答
試試這個:
沒有什麼神奇的這個...你只需在測試腳本,如果你的複選框被選中。如果您還想取消終止點擊鏈接(鏈接的點擊事件)或表單提交(表單提交事件)時的鏈接,則只需針對以下特定事件返回false:
$('#myForm').submit(function(e) {
if (!$('#mycheck').is(":checked")) {
return false;
} else {
//do something...or nothing...whatever...
}
});
編輯:您的提示插件似乎沒有選項來有條件地終止腳本。您可以通過執行以下兩種操作之一來解決這個問題:在插件中添加一些條件行或者在取消選中複選框時自動禁用該插件(這可能會佔用相對較多的CPU資源)。所以,讓我們關注的第一個選項...
當您設置tiptip插件,放在這樣的事情:
$(".someClass").tipTip({maxWidth: "auto", edgeOffset: 10, enter: myFunction});
這myFunction的將在「active_tiptip」的一開始叫,在任何事情發生之前。轉到插件源代碼的第101行,你可以看到它是如何被調用的。我通過在文檔中搜索單詞「enter」發現了這一點......我發現了兩個實例...其中一個屬性最初是通過第35行的空函數創建的,另一個位於active_tiptip()函數的開頭。現在,如果你想成爲能夠使用myFunction的要麼取消或不取消這個腳本在tiptip.js執行,變線101:
opts.enter.call(this);
要這樣:
if (!opts.enter.call(this)) {
return false;
}
然後創建你的myFunction的,這是否:
function myFunction() {
return $('#mycheck').is(":checked");
}
所以檢查和假時沒有時,myFunction的將返回true。如果爲false,則會暫停active_tiptip()函數的執行,從而確保您的工具提示不會彈出。
這就像我願意爲此一樣深。其餘的你可以自己弄清楚。
你的邏輯有效,但你還沒有回答我的問題的癥結所在。一個功能可以被馴服/停止。我所指的功能是一個jQuery提示彈出窗口,我想用一個複選框禁用它。 – Erik 2010-08-31 20:33:02
你的問題的「關鍵」從來沒有明確說過,所以我不知道我們如何期望知道你的意思。如果你想得到這個答案,我們需要知道你的其他代碼是什麼樣的。這個插件是幹什麼的?什麼時候被叫?我基本上沒有什麼信息可以繼續。 – treeface 2010-08-31 20:38:35
非常抱歉.. jquery插件是:http://code.drewwilson.com/entry/tiptip-jquery-plugin – Erik 2010-08-31 20:40:17
事情是這樣:
function something() {
if ($("my.checkbox:checked").size() > 0) {
// do something
}else{
// do nothing
}
}
沿着這些線路的東西反正。
真棒,但是要調用一個STOP或終止一個函數,我在用什麼? – Erik 2010-08-31 20:17:18
在執行過程中,您無法真正停止外部功能。至少我從來沒有聽說過JavaScript中存在的中斷... – 2010-08-31 21:01:45
- 1. 是否有可能通過函數使用關鍵字參數
- 2. 是否有可能通過libcloud啓動/停止節點
- 3. jQuery是否有可能通過statusCode?
- 4. 是否有可能從函數返回中斷/停止循環?
- 5. Javascript/jQuery是否有可能通過另一個函數打破函數?
- 6. 是否有可能停止REST呼叫?
- 7. 是否有可能組合框的jQuery自動通過輸入
- 8. 是否有可能停止構造函數加載索引函數?
- 9. 複選框停止我的JQuery腳本
- 10. 複選框沒有通過jQuery檢查
- 11. 通過選中複選框來調用函數JQuery
- 12. 是否有可能爲switchClass jQuery UI函數選擇效果?
- 13. 是否有可能通過setTimeout調用自定義函數Node.js
- 14. 是否有可能通過Reflection來傳遞F#函數?
- 15. 傳遞是否通過jQuery檢查複選框到PHP
- 16. 是否可以通過Azure函數停止/啓動Azure ARM虛擬機?
- 17. 是否有可能在TabWidget(Android)中有多個複選框
- 18. 停止IE緩存通過jquery模式對話框打開iframe
- 19. 如何通過PHP檢查複選框時調用jQuery函數?
- 20. Drupal 6查看:通過複選框打開/關閉過濾器?
- 21. jQuery通過複選框篩選表
- 22. 是否可以在重新加載頁面之前停止所有jQuery函數?
- 23. 是否有可能使用高階函數與可選參數
- 24. 是否有可能通過Javascript終止SharePoint工作流?
- 25. 是否有可能通過EasyMock的
- 26. 是否有可能通過Laravel 5.2
- 27. 是否有可能通過JSONArray迭代?
- 28. 是否有可能通過模型
- 29. 是否有可能通過API
- 30. 是否有可能找到通過TestFlight
我不知道我是否理解正確,但是這裏有: 使用全局變量,如果它設置爲1,做些事情,否則什麼也不做。 在函數的作用域中,你檢查變量的值,並根據這個做一些事情。 – 2010-08-31 20:08:06
好的......但我使用jquery的unbide,stop或其他東西嗎? – Erik 2010-08-31 20:11:23
我認爲這取決於你試圖阻止的功能。如果它是您自己的自定義函數,您可以將全局值的檢查添加到函數的操作中。就像用if(shouldrun){}來包圍動作,然後在複選框中點擊shouldrun的值爲1或者0 – Michael 2010-08-31 20:23:23