我想在jQuery中聲明以下內容:如果任何'LinkedDiv1'或'LinkedDiv2 '或'LinkedDiv3'或'LinkedDiv4'位於left:0和left:650之間,則所有鏈接('Link1','Link2','Link3'和'Link4')都應關閉。嘗試暫時禁用所有鏈接,當一個鏈接按下使用if語句(即如果div之間左:650px和0px,禁用所有鏈接)
這是因爲一旦我按任何一個鏈接,我就不能再同時激活另一個鏈接。由於每個鏈接都會導致div從右側(左側:650px)移動到屏幕上(左側:0px);想法是,如果任何LinkedDiv不是650px或0px,那是因爲它必須移動,因此已被相關鏈接激活。
我曾嘗試以下,但它似乎並沒有工作:
if (!$('#linkedDiv1').css('left') == '0px' && !$('#linkedDiv1').css('left') == '650px'){
$(".links").off('click');
}
else if (!$('#linkedDiv2').css('left') == '0px' && !$('#linkedDiv2').css('left') == '650px'){
$(".links").off('click');
}
else if (!$('#linkedDiv3').css('left') == '0px' && !$('#linkedDiv3').css('left') == '650px'){
$(".links").off('click');
}
else if (!$('#linkedDiv4').css('left') == '0px' && !$('#LinkedDiv4').css('left') == '650px'){
$(".links").off('click');
}
這裏是代碼中的小提琴(LinkedDiv1相當於#rightContentService; LinkedDiv2到#rightContentSweaters; LinkedDiv3到#rightContentContact; LinkedDiv4到#rightContentSeamstress) -
全屏:https://jsfiddle.net/8eah0fvm/1/embedded/result/ 小提琴:https://jsfiddle.net/8eah0fvm/1/
雖然我的問題沒有更好的辦法(在第m我可以一次按多個鏈接)暫時停用其他鏈接是最好的;看到爲什麼我提出的解決方案不起作用也很有趣。
我會用一個回調函數與'動畫()'方法來處理鏈接,而不是檢查元素_left_值。查看''.animate()'](http://api.jquery.com/animate/#animate-properties-options)的'start','complete'和'done'選項。 – hungerstar