DataTransfer

 L'objet DataTransfer est utilisé pour contenir les données qui sont traînées au cours d'une opération de glisser-déposer. Il peut contenir un ou plusieurs éléments de données, chacun d'un ou plusieurs types de données. Pour plus d'informations sur le glisser-déposer, voir Drag and Drop.

Please add a summary to this article.
  Last changed in Gecko 1.9.2 (Firefox 3.6 / Thunderbird 3.1 / Fennec 1.0)

Cet objet est disponible depuis la propriété de tous les événements dataTransfer glisser. Il ne peut pas être créée séparément.

Aperçu des proprietés

Propriété Type
dropEffect String
effectAllowed String
files FileList
mozCursor String
mozItemCount unsigned long
mozSourceNode Node
mozUserCancelled Boolean
types StringList

Aperçu des méthodes

void addElement(in Element image)
void clearData([in String type])
String getData(in String type)
void setData(in String type, in String data)
void setDragImage(in nsIDOMElement image, in long x, in long y)
void mozClearDataAt([in String type, in unsigned long index])
nsIVariant mozGetDataAt(in String type, in unsigned long index)
void mozSetDataAt(in String type, in nsIVariant data, in unsigned long index)
StringList mozTypesAt([in unsigned long index])

Propriétés

dropEffect

L'effet réel qui sera utilisé devrait toujours être l'une des valeurs possibles de effectAllowed.

Pour les événements DragEnter et dragover, les dropEffect seront initialisés en fonction des mesures que l'utilisateur demande. Comment cela est déterminé est spécifique à la plateforme, mais en général, l'utilisateur peut appuyer sur les touches de modification pour ajuster l'action, qui est souhaitée. Dans un gestionnaire d'événements pour les événements DragEnter et dragover, le dropEffect devrait être modifié si l'action de l'utilisateur demandée n'est pas celle qui est souhaitée.

Pour dragstart, drag, and dragleave events, le dropEffect est initialisé à "none". Any value assigned to the dropEffect will be set, but the value isn't used for anything.

For les evenements drop et dragend , le dropEffect seront initialisées à l'action qui a été désiré, qui sera la valeur que le dropEffect avait après la dernière dragenter ou un événement dragover.

valeurs possibles:

  • copy: Une copie de l'élément source est faite au nouvel emplacement.
  • move: Un élément est déplacé vers un nouvel emplacement.
  • link: Un lien est établi à la source du nouvel emplacement.
  • none: L'élément ne peut pas être supprimé.

Attribuer une autre valeur n'a aucun effet et conserve l'ancienne valeur.

effectAllowed

Indique les effets qui sont autorisés pour cette traînée. Vous pouvez régler cela dans l'événement dragstart pour définir les effets souhaités pour la source, et dans les événements DragEnter et dragover pour définir les effets souhaités pour la cible. La valeur n'est pas utilisée pour d'autres événements.

valeurs possibles:

  • copy: Une copie de l'élément source peut être faite à son nouvel emplacement.
  • move: Un élément peut être déplacé vers un nouvel emplacement.
  • link: Un lien peut être établi à la source au nouvel emplacement.
  • copyLink:Une opération de copie ou le lien est autorisée.
  • copyMove: Une copie ou déplacement est autorisé.
  • linkMove: Un lien ou opération de déplacement est autorisé.
  • all:Toutes les opérations sont autorisées.
  • none: l'élément ne peut être droppe.
  • uninitialized:la valeur par défaut lorsque l'effet n'a pas été fixée, ce qui équivaut à tous.

Assigning any other value has no effect and retains the old value.

files

Contient une liste de tous les fichiers locaux disponibles sur le transfert de données. Si l'opération de glisser n'implique pas glisser des fichiers, cette propriété est une liste vide. Un accès aux index non valide sur laFileList spécifiée par cette propriété renvoie null.pour plus de detailles voir Filelist

Example

Cet exemple retourne la liste des fichiers traînée dans la fenêtre du navigateur.

 

<html>
<head>
<script>

function dodrop(event)
{
  var dt = event.dataTransfer;
  var files = dt.files;

  var count = files.length;
  output("File Count: " + count + "\n");

	for (var i = 0; i < files.length; i++) {
	  output(" File " + i + ":\n(" + (typeof files[i]) + ") : <" + files[i] + " > " +
			 files[i].name + " " + files[i].size + "\n");
	}
}

function output(text)
{
  document.getElementById("output").textContent += text;
  dump(text);
}

</script>
</head>
<body>

<div id="output" style="min-height: 100px; white-space: pre; border: 1px solid black;"
     ondragenter="document.getElementById('output').textContent = ''; event.stopPropagation(); event.preventDefault();"
     ondragover="event.stopPropagation(); event.preventDefault();"
     ondrop="event.stopPropagation(); event.preventDefault(); dodrop(event);">

</body>
</html>

types

Titulaire d'une liste des types de format des données qui sont stockées pour le premier article, dans le même ordre les données ont été ajoutées. Une liste vide sera retournée si aucune donnée n'a été ajouté.

Gecko 1.9.2 note
La chaîne est inclus dans cette liste, si les fichiers sont inclus dans.

(Firefox 3.5 / Thunderbird 3.0 / SeaMonkey 2.0)

mozCursor

The drag cursor's state. This is primarily used to control the cursor during tab drags.

Note: Cette méthode est actuellement mis en œuvre que sur Windows.

valeurs possibles

auto
Uses the default system behavior.
default
Uses the default Gecko behavior, which is to set the cursor to an arrow during the drag operation.
Note: Si vous spécifiez une valeur autre que "default", "auto" est supposé.

mozItemCount

Le nombre d'éléments étant traîné.

Note: Cette propriété est  spécifiques a Gecko.

mozSourceNode

le Node sur lesquelles le curseur de la souris se trouvait lorsque le bouton a été pressé de lancer l'opération de glisser. Cette valeur est nulle pour traîne externe ou si l'appelant ne peut pas accéder au nœud.

Note: This property is Gecko-specific.

mozUserCancelled

Cette propriété s'applique uniquement à l'événement dragend, et il est vrai si l'utilisateur a annulé l'opération de glisser en appuyant s'échapper. Il sera faux dans les autres cas, y compris si le glisser échoué pour toute autre raison, par exemple en raison d'une goutte sur un emplacement non valide. Cette propriété n'est pas encore implémenté sous Linux.

Note: This property is Gecko-specific.

Methods

addElement()

Régler la source de glissement. Habituellement vous ne seriez pas changer cela, mais il aura une incidence sur le nœud qui les événements de glisser-dragend sont cuits à. La cible par défaut est le nœud qui a été traîné.

 void addElement(
   in Element element
 );
Parametres
element
The element to add.

clearData()

Retirer les données associées à un type donné. L'argument type est facultative. Si le type est vide ou non spécifié, les données associées à tout type est supprimé. Si les données pour le type spécifié n'existe pas, ou le transfert de données ne contient pas de données, cette méthode n'aura aucun effet.

 void clearData(
   [optional] in String type
 );
Parametres
type
The type of data to remove.

getData()

Récupère les données d'un type donné, ou une chaîne vide si les données de ce type n'existe pas ou le transfert de données ne contient aucune donnée.

Une erreur de sécurité se produira si vous tentez de récupérer des données lors d'une traînée qui a été fixé à partir d'un domaine différent, ou l'appelant autrement n'auraient pas accès. Ces données ne seront disponibles une fois une chute se produit pendant l'événement drop.

 void getData(
   in String type
 );
Parametres
type
The type of data to retrieve.

setData()

Définissez les données d'un type donné. Si les données pour le type n'existe pas, il est ajouté à la fin, de telle sorte que le dernier élément dans la liste des types sera le nouveau format. Si les données pour le type existe déjà, les données existantes sont remplacées dans la même position. C'est, de l'ordre de la liste des types n'est pas changé lors du remplacement des données du même type.

 void setData(
   in String type,
   in String data
 );
Parametres
type
The type of data to add.
data
The data to add.

setDragImage()

Définir l'image à utiliser pour glisser, si une mesure est souhaitée. La plupart du temps, ce ne serait pas réglée, comme une image par défaut est créé à partir du nœud qui a été traîné.

Si le nœud est un élément HTML img, un élément canvas HTML ou un élément d'image XUL, les données d'image est utilisée. Sinon, l'image doit être un nœud visible et faites glisser l'image sera créée à partir de ce. Si l'image est nulle, toute image glisser personnalisé est effacé et la valeur par défaut est utilisé à la place.

Les coordonnées de spécifier le décalage dans l'image où le curseur de la souris devrait être. Pour centrer l'image, par exemple, utiliser des valeurs qui sont la moitié de la largeur et la hauteur de l'image.

 void setDragImage(
   in Element image,
   in long x,
   in long y
 );
Parametres
image
An element to use as the drag feedback image
x
Horizontal offset within the image.
y
Vertical offset within the image.

mozClearDataAt()

Supprime les données associées au format donné pour un élément à l'index spécifié. L'indice est dans la gamme de zéro au nombre d'articles moins un.

Si le dernier format de l'élément est supprimé, l'élément entier est retiré, réduisant mozItemCount par un.

Si la liste des formats est vide, alors les données associées à tous les formats est enlevé. Si le format n'est pas trouvé, alors cette méthode n'a aucun effet.

 

Remarque: Cette méthode est Gecko spécifiques.
 void mozClearDataAt(
   [optional] in String type,
   in unsigned long index
 );
Parametres
type
The type of data to remove.
index
The index of the data to remove.

mozGetDataAt()

Récupère les données associées au format donné pour un élément à l'index spécifié, ou null si elle n'existe pas. L'indice devrait être dans la gamme de zéro au nombre d'articles moins un.

Note: This method is Gecko-specific.
 nsIVariant mozGetDataAt(
   [optional] in String type,
   in unsigned long index
 );
Parametres
type
The type of data to retrieve.
index
The index of the data to retrieve.

mozSetDataAt()

Un transfert de données peut stocker plusieurs éléments, chacun à un moment donné index de base zéro. mozSetDataAt () ne peut être appelé avec un argument indice inférieur à mozItemCount dans ce cas, un élément existant est modifié, ou égale à mozItemCount auquel cas un nouvel élément est ajouté, et le mozItemCount est incrémenté de un.

Les données doivent être ajoutées par ordre de préférence, avec le format le plus spécifique ajouté en premier et le format moins spécifique ajouté en dernier. Si les données du format donné existe déjà, il est remplacé dans la même position que les anciennes données.

Les données devraient être soit une chaîne, un type primitif booléen ou le numéro (qui sera converti en une chaîne) ou une
nsISupports.

Note: This method is Gecko-specific.
 void mozSetDataAt(
   [optional] in String type,
   in nsIVariant data,
   in unsigned long index
 );
Parametres
type
The type of data to add.
data
The data to add.
index
The index of the data to add.

mozTypesAt()

Titulaire d'une liste des types de format des données qui sont stockées pour un élément à l'index spécifié. Si l'index n'est pas dans la gamme allant de 0 au nombre d'articles moins un, une liste de chaîne vide est retournée.

Note: This method is Gecko-specific.
 nsIVariant mozTypesAt(
   in unsigned long index
 );
Parameters
index
The index of the data for which to retrieve the types.

See also

Drag and Drop

Étiquettes et contributeurs liés au document

Contributeurs ayant participé à cette page : virg, fscholz, mekal
Dernière mise à jour par : fscholz,