开发者社区> 问答> 正文

ztree3.5版本修改双击事件无效后在谷歌浏览器中问题仍旧存在。-服务报错

"

<a href=""http://my.oschina.net/dyhunter"" class=""referer"" target=""_blank"">@zTree 你好,想跟你请教个问题:

我原来使用3.3版本时设置了nameIsHTML:true之后,双击事件只有第一次有效,但在昨天升级到3.5版本后,在IE和火狐下面没问题了,谷歌浏览器却问题依旧,请问该如何解决??

"

展开
收起
montos 2020-05-31 11:08:36 703 0
1 条回答
写回答
取消 提交回答
  • "

    找到 custom_font.html

    把 setting 修改为:

    var setting = {
    	view: {
    		fontCss: getFont,
    		nameIsHTML: true
    	},
    	callback : {
    		onDblClick : function(event, treeId, treeNode) {
    			console.log("onDblClick:" + treeNode.name);
    		}
    	}
    };
    我用我的chrome 看了一下木有啥问题呀。。。只是你不能一直不停的点击,那样的话,只会触发一次双击事件,这个对于普通节点也是这样的。这应该是浏览器对于连续点击的优化处理吧

    ######

    貌似木有对这部分做过修改吧,不知道你的 html 里面都有些什么? 能否把具体情况讲讲? 

    不排除是浏览器自身的某些问题

    ######

    引用来自“zTree”的答案

    貌似木有对这部分做过修改吧,不知道你的 html 里面都有些什么? 能否把具体情况讲讲? 

    不排除是浏览器自身的某些问题

    有做过这个修改的,请看更新日志。

    *2012.11.20* v3.5
       * 【优化】原先的 clone 方法 (特别感谢:愚人码头)
       * 【修改】隐藏父节点后,使用 expandAll 方法导致 父节点展开的 bug
       * 【修改】使用 jQuery v1.7 以上时,设置 zTree 容器 ul 隐藏(visibility: hidden;)后, 调用 selectNode 导致 IE 浏览器报错 Can't move focus 的 bug
       * 【修改】正在异步加载时,执行 destory 或 init 方法后,异步加载的节点影响新树的 bug
       * 【修改】方法 reAsyncChildNodes 在 refresh 的时候未清空内部 cache 导致内存泄露 的 bug
       * 【修改】批量节点拖拽到其他父节点内(inner)时,导致顺序反转 的 bug
       * 【修改】对于 使用 html格式的 节点无法触发 双击事件 的 bug
       * 【修改】onCheck 回调中的 event ,保证与触发事件中的 event 一致
       * 【修改】异步加载时,在 onNodeCreated 中执行 selectNode 后,导致节点折叠的 bug
       * 【修改】API 中 dataFilter 的参数名称 childNodes ->  responseData
       * 【修改】API 中 iconSkin 的 举例内容
       * 【修改】API 中 chkDisabled 的说明
       * 【修改】Demo 中 index.html 内的 loadReady 重复绑定问题

    下面是节点,第一次双击有效果,第二次就无效了。

    ###### ######嘿嘿,真不好意思,自己改的都忘了,刚才没有去查升级 log; 现在手头有活儿,等我干完活儿再去看看。######

    引用来自“zTree”的答案

    嘿嘿,真不好意思,自己改的都忘了,刚才没有去查升级 log; 现在手头有活儿,等我干完活儿再去看看。
    ,我也是帮一个妹子的忙,你懂得。
    ######这个必须得帮!######

    引用来自“zTree”的答案

    找到 custom_font.html

    把 setting 修改为:

    var setting = {
    	view: {
    		fontCss: getFont,
    		nameIsHTML: true
    	},
    	callback : {
    		onDblClick : function(event, treeId, treeNode) {
    			console.log("onDblClick:" + treeNode.name);
    		}
    	}
    };
    我用我的chrome 看了一下木有啥问题呀。。。只是你不能一直不停的点击,那样的话,只会触发一次双击事件,这个对于普通节点也是这样的。这应该是浏览器对于连续点击的优化处理吧

    确实是浏览器的问题,用的window.open打开的窗口,第一次可以,第二次就不行了。谢谢。
    ######用 window.open 打开同一个name 的窗口,永远只会出一个,如果打开了没有关闭,再点击的话,会直接刷新已打开的,但不能保证获取到焦点######

    引用来自“zTree”的答案

    用 window.open 打开同一个name 的窗口,永远只会出一个,如果打开了没有关闭,再点击的话,会直接刷新已打开的,但不能保证获取到焦点
    已经关闭了的,但是就是没出来。只好另外想办法了。
    ######回复 @zTree : 嗯,这个可以试试看。感激啊。######试试看每次更换 name 呢?"
    2020-05-31 11:08:45
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
WEB浏览器中即将发生的安全变化 立即下载
基于浏览器的实时构建探索之路 立即下载
基于浏览器的实时构建探索之路--玄寂 立即下载