2010-08-10 6 views
0

HI là ... Im essayant de créer un simple Jquery au sein de Droppable. La page fonctionne et me permet de déposer une vidéo sur la zone droppable sélectionnée (div class = "roundedVideoDrop"), mais je veux empêcher l'utilisateur de pouvoir laisser tomber plus d'une vidéo dans chaque div, qui a été créé.Simple Jquery Question

Mon code pour cela est:

$("div.roundedVideoDrop").droppable({ 
      activeClass: 'highlight', 
      hoverClass: 'highlight-accept', 
      drop: function(event, ui){ 
       if $(this).sibling('video').count() == 0 { 
        return true; 
       } else { 
        return false; 
       } 

Que im essaie de faire est de vérifier et voir s'il y a un autre frère (c.-à une autre dans le) s'il est alors la vidéo en cours de déplacement ne peut pas être tombé dans le, sinon c'est autorisé.

Cela ne fonctionnera pas, en fait relance une erreur d'analyse dans Safari et j'ai essayé toute la matinée pour le faire fonctionner mais pas de chance. Quelqu'un pourrait-il me dire la bonne façon de le faire?

Merci beaucoup

+0

Merci pour les réponses rapides! Je veux être en mesure d'empêcher l'utilisateur d'être en mesure de déposer la balise vidéo dans la balise div quand une balise vidéo a déjà été déposée dans la div sélectionnée. L'exemple ci-dessous ne me permet pas de le faire, je suis toujours à la recherche d'une solution pour le moment mais pas encore de chance! – user416030

Répondre

0

Essayez $(this).sibling('video').size() au lieu de $(this).sibling('video').count()

+0

'$ (this) .sibling ('video'). Length' pour éviter une surcharge d'appel de fonction. – jAndy

0

Vous devez utiliser les enfants non frères et sœurs si vous êtes à la recherche dans la zone de chute actuelle

$("div.roundedVideoDrop").droppable({ 
      activeClass: 'highlight', 
      hoverClass: 'highlight-accept', 
      drop: function(event, ui){ 
       return !$(this).children('video').length; 
      }