DataTransfer.mozSetDataAt() - Web APIs 编辑

Non-standard

This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

Deprecated

This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

The DataTransfer.mozSetDataAt() method is used to add data to a specific index in the drag event's data transfer object.

A data transfer may store multiple items, each at a given zero-based index. mozSetDataAt() may only be called with an index argument less than mozItemCount in which case an existing item is modified, or equal to mozItemCount in which case a new item is added, and the mozItemCount is incremented by one.

Data should be added in order of preference, with the most specific format added first and the least specific format added last. If data of the given format already exists, it is replaced in the same position as the old data.

The data should be either a string, a Boolean or number type (which will be converted into a string) or an nsISupports.

Note: This method is Gecko-specific.

Syntax

void dataTransfer.mozSetDataAt([type], data, index);

Arguments

type
A string representing the type of the drag data to add to the drag data object.
data
A nsIVariant representing the data to add to the drag data object.
index
A unsigned long representing the index of the data to add.

Return value

void

Example

This example shows the use of the mozSetDataAt() method in a dragstart handler.

function dragstart_handler(event)
{
  var dt = event.dataTransfer;
  var idx = dt.mozItemCount;
  // Add two new items to the drag transfer
  if (idx >= 0) {
    dt.mozSetDataAt("text/uri-list","http://www.example.com/", idx);
    dt.mozSetDataAt("text/html", "Hello World", idx+1);
  }
}

Specifications

This method is not defined in any Web standard.

Browser compatibility

BCD tables only load in the browser

See also

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:81 次

字数:4630

最后编辑:7 年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文