首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript没有做任何事情

Javascript没有做任何事情
EN

Stack Overflow用户
提问于 2014-01-28 00:17:51
回答 3查看 305关注 0票数 2

我不知道拖放,看了很多教程和问题,但仍然当我放下我的笑脸,什么都没有发生。我以为它会起作用,因为它在刚开始的时候起作用。

HTML:

代码语言:javascript
复制
<div id='dragging'></div>
<img draggable ='true' src ="http://img87.imageshack.us/img87/5673/rotatetrans.png" id="smiley"/>

javascript:

代码语言:javascript
复制
var smiley = document.getElementById('smiley');
var dragging = document.getElementById('dragging');
smiley.ondragstart = function(){
  dragging.innerHTML = 'You are dragging!';
};
smiley.ondrop = function(){
  dragging.innerHTML=' ';
};

我也尝试过这样做: javascript:

代码语言:javascript
复制
smiley.addEventListenter('ondrop',dragging.innerHTML=' ');
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-01-28 00:28:59

你读过教程,但似乎没有读到正确的教程。

要触发drop事件,首先必须取消dragoverdragenter事件。没什么可说的,但这应该管用:

代码语言:javascript
复制
document.ondragover = function(e) {
    e.preventDefault();
};
document.ondragenter = function(e) {
    e.preventDefault();
};

就像Patrick在注释中注意到的那样,您必须在拖放区域设置drop事件列表,而不是在拖放元素本身上设置。也可能是document

代码语言:javascript
复制
document.ondrop = function(e) {
    dragging.innerHTML = ' ';
};

这里是一个关于所有这些胡说八道的文章作者: Peter Paul Koch (警告:提前斥责)。

票数 4
EN

Stack Overflow用户

发布于 2014-01-28 00:21:26

尝尝这个

代码语言:javascript
复制
dragging.addEventListenter('drop', function() {
    dragging.innerHTML=' Dropped '
}, false);

而不是

代码语言:javascript
复制
smiley.addEventListenter('ondrop',dragging.innerHTML=' ');

addEventListener的第二个参数是一个函数。第三个参数决定是否在冒泡期间捕获该事件。

并且,假设删除操作发生在显示图像的同一个div上。

票数 0
EN

Stack Overflow用户

发布于 2014-01-28 00:25:43

试着遵循这个w3schools拖放

米基盖伊

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21394511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档