Internet Explorer 编程简述(十一)实现完美的Inplace Drag & Drop——“超级拖放”
2009年12月29日
关键字:超级拖放,GetDropTarget,ondragover,IHTMLDataTransfer
1、概述
许多多窗口浏览器都提供了一种被称为“超级拖放”(或“超级拖拽”、“随心拖放”等等,不一而足)的功能。作为对IE拖拽行为对扩展,“超级拖放”实现了一些非常实用的功能:
- 拖放网页链接:通常是在新窗口中打开
- 拖放选中的文字:保存文字、作为关键字通过搜索引擎搜索网络、作为Url打开等
- 拖放图片:通常是保存图片到指定文件夹
- 当然,还有很关键的一点:拖动对象时鼠标指针反馈不同的拖拽效果
在《Internet Explorer 编程简述(十)响应来自HTML Element的事件通知——几个好用的类》中曾提到,尽管许多浏览器都提供了超级拖放的功能,但与 IE 的缺省实现相比,除了具备鼠标指针拖拽效果外,还没有哪个浏览器的实现能够实现: - 文字在页面内与输入框之间的交互拖放(这一点最为重要)
- 来自外部的文字与网页输入框之间的交互拖放
- 拖拽时滚动页面(这一点是被忽略了)
本文的目的,一是介绍实现超级拖放的两种方法,二是说明如何实现“完美”的拖放——即扩展IE拖拽行为的同时,保留IE默认的拖拽行为。三是给出一个最为直接和简洁的实现,至于拖放不同的对象以实现不同的功能,不在本文讨论的范围,略去。
阅读全文…

近期评论