jQuery перетаскиваемая проблема - PullRequest
3 голосов
/ 19 августа 2010

Я могу перетаскивать предметы без проблем, к сожалению, предметы можно перетаскивать везде, куда я не хочу.Я хочу, чтобы элементы перетаскивались только в определенных областях, таких как кнопки.Я использовал много методов, но я не получил никакого результата.Подскажите, пожалуйста, как отключить кнопочное меню с идентификатором 34, чтобы кнопки там не падали?Вы можете увидеть код, который я использую (который не работает, чтобы не сбросить)

С наилучшими пожеланиями

Altaico

Вот код:

$("#35").draggable();
$("myArticle").droppable( "option", "disabled", true );

Ответы [ 3 ]

2 голосов
/ 19 августа 2010

Вы хотите установить опцию revert: invalid для перетаскиваемого объекта, которая заставит его вернуться назад, если он упадет на что-либо, не помеченное как dropable, поэтому попробуйте:

$("#35").draggable({revert: "invalid"}));
$("myArticle").droppable( "option", "disabled", true );
$("#36").droppable( "option", "disabled", false );

Это означает, что вы сможете перетащить 35 на 36, но не на myarticle.

Ниже приводится полная страница HTML:

<head>
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"></script>
</head>    
<body>
  <script type="text/javascript">
    $().ready(function() {
      $("#35").draggable({revert: "invalid"});
      $("#36").droppable({disabled: false });
    });
  </script>
  <div id="34" style="width:100px; height:100px; background-color:red;"> 
    </div>
  <div id="35" style="width:100px; height:100px; background-color:yellow;" >
     </div>
  <div id="36" style="width:300px; height:300px; border:solid blue 1px;">
    drop me here
  </div>
</body>

Отображает 2 цветных блока (div). Вы можете перетащить желтый (ID 35) и бросить его только в квадрат с надписью «брось меня здесь». Если вы хотите уронить его куда-нибудь еще, вам нужно украсить эту область с помощью

Надеюсь, это поможет

0 голосов
/ 19 августа 2010

JonNeale

$("#35").draggable({revert: "invalid"});
$("#myArticle").droppable( "option", "disabled", true );
$("#54").droppable( "option", "disabled", false );

На этот раз я не могу опустить кнопку 35. Я могу перетащить ее, но нигде не могу ее уронить, например, я хотел сбросить ее по кнопочному меню под названием 54. Как я могу уронитьтолько кнопка 54?

0 голосов
/ 19 августа 2010

Посмотрите на опцию accept для вашего элемента droppable - это позволяет вам либо указать, какие классы должен иметь перетаскиваемый элемент, прежде чем он будет рассматриваться для удаления, либо функцию, которую вы можете использовать для этогорешение, основанное на некоторых других критериях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...