加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

zeroclipboard的使用问题

发布时间:2020-12-15 06:10:38 所属栏目:百科 来源:网络整理
导读:基本使用,官网上的教程,就不说了.官网地址:http://code.google.com/p/zeroclipboard/ 有一点点补充,就是在本地测试静态页的时候,需要在falsh的全局安全设置中,把下下来的flash添加进去,具体操作方法见flash的网站.下面的地址可以设置 http://www.macr

基本使用,官网上的教程,就不说了.官网地址:http://code.google.com/p/zeroclipboard/

有一点点补充,就是在本地测试静态页的时候,需要在falsh的全局安全设置中,把下下来的flash添加进去,具体操作方法见flash的网站.下面的地址可以设置

http://www.macromedia.com/support/documentation/cn/flashplayer/help/settings_manager04.html


使用过程中还是遇到了各种各样的问题。我的需求是:在弹出一个对话框(jquery dialog)之后,初始化zeroclipboard,zeroclipboard初始化flash文件的时候确定flash的位置是根据下面的方法

var info = {
left: 0,?
top: 0,?
width: obj.width ? obj.width : obj.offsetWidth,?
height: obj.height ? obj.height : obj.offsetHeight
};


while (obj && (obj != stopObj)) {
info.left += obj.offsetLeft;
info.top += obj.offsetTop;
obj = obj.offsetParent;
}


我在用的时候跟官网的例子一样的结构

<span id="clip_container"><span id="clip_link" ><b>复制链接到剪贴板</b></span></span> ??

最后clip.glue('clip_link','clip_container' );


生成的dom元素都正常,但是就找不到包裹着flash的DIV在哪儿(设置了背景色,宽高都不为0),不小心地改了生成的DIV的top跟left,终于发现DIV出来了。原因是jquery ui生成的对话框,也是div,并且设置了position属性,内层div显示的时候left跟top属性值就是相对这个父div的。事实上zeroclipboard生成出来的dom元素结构,是希望left跟top属性是相对'clip_container' 这个元素的。把clip_container元素加上style="position:relative;"再测试。


firefox,chrome下正常了,IE9,没反应。

用工具看生成出来的div和flash,发现div和flash的height值为0(会在页面上不显示)。猜测原因可能是span的offsetHeight会被IE解释成0,还是尝试各种方法最后发现把<span id="clip_link" >元素加上属性style="display:inline-block"问题就解决了(直接用block会出现flash的宽度占据span所在行的整行)


目前还没有在万恶的IE6下测试。大概的问题原因也知道了,但是因为对offsetWidth,offsetHeight这些东西和各浏览器对各种标签的解释差异 都没有那么清楚,还是花了不少时间在这个小东西上面-_-!

写下来,希望能帮到碰到类似问题的朋友

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读