Safari 上的 setDragImage 意外崩溃

2023-12-11

我很难确定为什么 Safari 6.0+ 在尝试使用 setDragImage() 方法时意外崩溃。

我有一个 Dragstart 事件,我想在发生此事件时附加背景图像。记录的方法是在事件接线上使用 setDragImage() 方法。这在 Firefox 和 Chrome 中运行得非常好。

我知道这是可能的,因为当我跑步时这个网站使用 Safari 浏览器,拖动图像效果完美。

然而,在我的简单的例子它爆炸了。

HTML:

 <div  draggable='true' class='dragme'>
  </div>

JavaScript:

var dragMe = document.querySelector('.dragme');

dragMe.addEventListener('dragstart', function(e)
{
    e.dataTransfer.setData('Test', 'some data');   
    var img = document.createElement("img");   
    img.src = "http://kryogenix.org/images/hackergotchi-simpler.png";
    e.dataTransfer.setDragImage(img, 0, 0);
}, false);

CSS:

.dragme
{
  border:1px solid red;
  height:100px;
  background-color:blue;
}

我已经确定,如果您在 setDragImage() 方法上使用的图像元素尚未加载,浏览器将线程中止。修复方法很简单。确保在调用该方法之前加载图像元素。最简单的方法是在事件外部创建图像元素。

//Preload the image
var img = document.createElement("img");   
img.src = "http://kryogenix.org/images/hackergotchi-simpler.png";

dragMe.addEventListener('dragstart', function(e)
{
    e.dataTransfer.setData('Test', 'some data');   
    e.dataTransfer.setDragImage(img, 0, 0);
}, false);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Safari 上的 setDragImage 意外崩溃 的相关文章

随机推荐

  • 信息模式中referential_constraints.unique_constraint_* 列的NULL 值

    在 Postgres 10 中我声明了以下内容 create table test abc pk integer not null id integer not NULL id2 integer not null PRIMARY KEY p
  • T&&(双与号)在 C++11 中意味着什么?

    我一直在研究 C 11 的一些新功能 我注意到的一个是声明变量时的双 符号 例如T var 首先 这个野兽叫什么 我希望谷歌允许我们像这样搜索标点符号 它到底有什么作用mean 乍一看 它似乎是一个双重引用 就像C风格的双指针一样 T va
  • IntelliJ 和 Tomcat.. 如何..?

    我使用 Netbeans 开发站点 并使用 Tomcat 作为本地服务器来管理它 在 Netbeans 中 它是 安装 写入 点击运行 它就可以工作 我如何在 IntelliJ 中完成同样的事情 我找不到这方面的分步说明 NOTE 社区版不
  • OpenUri 导致 HTTPS URL 出现 401 Unauthorized 错误

    我正在添加从需要使用带有身份验证的 HTTPS 连接的源中抓取 XML 页面的功能 我正在尝试使用 Ryan Bates 的 Railscast 190 解决方案 但遇到 401 身份验证错误 这是我的测试 Ruby 脚本 require
  • 如何查询API获取第三级路径的所有数据?

    这是我当前的架构 var Schema mongoose Schema var ProviderSchema new Schema name String abbreviated String services Array location
  • C# - 从连接字符串获取文件路径

    C 中是否有现有方法从表示文件的字符串中提取文件路径ConnectionString to a SqlCE sdf文件 我想在初始化时检查文件是否存在 如果文件被修改则备份它 连接字符串示例 strConn Data Source Data
  • 使用 C# 访问应用程序和服务日志

    我想知道是否有一种方法可以访问 Windows 中事件查看器实用程序中名为 应用程序和服务日志 的部分下的日志 问题是 我可以使用下面的代码读取 Windows 日志下的条目 我阅读了整个条目 并获取了具有必要 id 的项目 获得了前 20
  • Python char 数组声明

    有没有办法在 python 中声明一个固定大小的 char 数组 例如在 C 中 char myArray 100 我还想用 NULL 初始化所有字符 你不能有一个fixed大小字符串 Python 不是这样工作的 但是您可以轻松地将字符串
  • 为什么使用包名称从链接的本地 ES 模块包导入可以使用“main”属性,但使用“module”会失败

    Question 为什么使用 pacakge 名称从链接的本地 NPM pacakage 作为 ES 模块构建 导入可以工作 pacakge json有 main 属性 但当它具有 module 财产 Setup 更具体地说 如果我们有以下
  • 查找所有从主表“继承”的分区表

    假设我有一个表 foo 其中包含分区表 foo1 foo2 和 foo3 但目前我所知道的是有一些分区表继承自表 foo 如何找到 foo 有 3 个分区 foo1 foo2 和 foo3 列出所有分区 子表 使用 PG v9 v13 进行
  • 从 4.2.7/4.3.0.CR1 开始,Hibernate JPA OneToOne 孤立删除仍然无法正常工作

    读过JPA 2 0 Hibernate 和 orphanRemoval 仅替换实体并不会删除旧实体 以及相关票证https hibernate atlassian net browse HHH 6484 我推断这个问题已经 最终 在版本 4
  • 通过投影查询返回实体

    是否可以使用投影查询返回实体 我已经使用 SQL 查询成功完成了此操作 见下文 但找不到如何使用投影查询来完成此操作 Dim sql As String SELECT a b FROM a LEFT OUTER JOIN b ON a pk
  • 在 Select 语句计算 Oracle SQL 中使用列别名 [重复]

    这个问题在这里已经有答案了 是否可以做类似的事情select 1 as foo foo 1 from dual 这返回ERROR at line 1 ORA 00904 FOO invalid identifier 我有一个组成列的冗长计算
  • 从 Geb 测试调用 GORM 方法

    在我的 Grails 应用程序中 我有一套 Geb 测试 其中我调用各种 GORM 方法来保存 检索数据 直到最近 这一切都运行良好 但现在 每当我尝试从 Geb 测试调用 GORM 方法时 都会收到以下错误 类 com example M
  • 如何在打字稿中将日期转换为字符串格式 yyyy-mm-dd [重复]

    这个问题在这里已经有答案了 如何将日期转换为字符串格式年 月 日在打字稿中 现在我得到的日期为2017 年 3 月 24 日星期五 00 00 00 GMT 0400 东部夏令时间 我只需要格式中的日期 2017 03 24 从此并且没有任
  • jQuery 验证 – 选中复选框时检查输入值

    我有一个电话号码输入字段 其中包含短信更新选项 我想检查当选中短信复选框时该号码是否是手机号码 我已经使正则表达式正常工作 并且正在验证 但即使未选中复选框 也会显示 移动要求 错误 validator addMethod regex fu
  • 使用复选框在 mvc 中创建用户时添加功能

    我想在 mvc 中创建具有特殊功能的用户 当用户要创建时 我想为每个用户分配一些特殊功能 例如特定用户拥有自己的房子 使用复选框选择拥有自己的汽车 特定功能驻留在名为 feature 的不同表中 那么我如何在创建用户时向用户添加这些功能 我
  • Firestore 安全规则 - 如何防止修改某个字段

    假设我们有一个名为的 Firestore 集合todos 其中每个待办事项将如下所示 name Buy milk completed false user eYtGDHdfgSERewfqwEFfweE some user s uid 现在
  • 获取列表中最大的可用数字

    我有以下字符串List
  • Safari 上的 setDragImage 意外崩溃

    我很难确定为什么 Safari 6 0 在尝试使用 setDragImage 方法时意外崩溃 我有一个 Dragstart 事件 我想在发生此事件时附加背景图像 记录的方法是在事件接线上使用 setDragImage 方法 这在 Firef