簡體   English   中英

使用:lt(3)選擇器禁用每個元素的可拖動性

[英]Disable draggable for each element using :lt(3) Selector

我有以下工作代碼:

$stock.click(function () {
    $waste.append($stock.children('.container:lt(3)').card('upturn').droppable('disable').css( "left", function(i) {return ["0rem", "2rem", "4rem"][i];}) ); //3 divs
  });

這段代碼為css除外的3 div添加了幾個類。 每個div使用以下方法獲得不同的left屬性:

.css( "left", function(i) {return ["0rem", "2rem", "4rem"][i];})

所有這些都有效,但我也想為前2個div禁用可拖動選項。

我已經嘗試過類似(1)的事情:

.draggable('disable', function(i) {return ["true", "true", "false"][i];})

和(2)

.draggable(function(i) {return ['disable', 'disable', 'enable'][i];})

但是try(1)禁用了所有3個div,而不僅僅是前2個,並且try(2)根本不起作用。

我該如何實現?

非常感謝

可拖動窗口小部件的Disabled屬性是使用option方法設置的,並且該屬性需要一個布爾值,另一方面, css jQuery方法將一個函數作為第二個參數接受,而disable方法或disabled屬性則不接受。 最好的方法是使用每種方法對每個項目進行迭代:

.each(function(i){ $(this).draggable("option", "disabled", [false, true, true, false][i]) });

jsfiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM