在AxureRP8和RP9.0.0.36xx版本中可用的禁用浏览器右键菜单方式在RP9最新版中已失效 已解决

hnrichie 普通用户 2020-7-27 2393

上述JS代码已失效


登录后回复
最新回复 (3)
  • hnrichie 普通用户 2020-7-30
    0 引用 8
    本问题已解决,为何原有JS无法禁止浏览器自带右键不显示,是因为window.event.returnValue这个属性在最新版的Chrome浏览器中已不支持,浏览器会报个错,returnValue这个属性未定义;如果使用8x版本以上Chrome浏览器,禁用浏览器自带右键的方法为:在页面加载时这个交互事件中加入以下JS代码:
    javascript:
    document.addEventListener('contextmenu',function(e){
            e.preventDefault();
        })();

    这样处理后,不论是点“预览”还是生成HTML本地方式查看效果时,浏览器右键菜单都能禁掉
  • hnrichie 普通用户 2020-7-30
    0 引用 7
    松林放牛娃 是在生成预览中测试的么?本地测试是不可以的; 动态面板做2级菜单,收起/展开挺方便;3级就比较麻烦了; 单击2展3时:交互中,先收起1级,再展开2展3,再展把1展2打开。收起也是一样的逻辑;
    版主,我刚测试了,本地确实2种方式不可以(浏览器自带的右键菜单会出现):1、直接点"预览"方式 2、点"HTML",生成静态HTML到Nginx,通过访问nginx端口方式,但是将页面改动推送到http://cloud.axure.org/【国内版 Axure Share Cloud】上,再查看效果时,浏览器自带右键菜单的确不显示了!这是因为http://cloud.axure.org/上部署的AxureShare服务端程序生成HTML时,将那段JS作了加工处理,使浏览器能侦察这段JS并生效?而本地预览和生成HTML时,把那段JS没生成到HTML源码中去吗?(我感觉像是这么回事)(待会有时间在浏览器上查看网页源代码作一下对比看看)
  • hnrichie 普通用户 2020-7-30
    0 引用 6

    (见主贴图二)右键是写在元件上(动态面板上),另外,像这种无限级树节点,我目前的做法是每个节点是一个面板,每个面板有2种状态:收伸与展开,在展开状态里再套上一个子节点(也是一个节点一个面板,也是分收缩和展开)【无限往下套面板】,这时就会有一个问题发生了:1/1.1/1.1.1/1.1.1.1。。。2/2.1/2.1.1/2.1.1.1。。。当点击1.1.1.1伸缩时,无法将挨着的2这个1级节点拉动)

返回