如何找出导致页面不允许突出显示文本或右键单击的脚本?

时间:2015-11-10 16:47:42

标签: javascript html

每次我使用Chrome进行aliexpress时,我发现我无法在项目页面上突出显示文本(我可以在搜索结果列表中),但我无法右键单击以获取图像上下文菜单。这两种行为在Edge中运行得很好。

我在控制台中看到的唯一错误是其中两个:

618686_795079156.html?spm=5261.7049941.1998509440.374.8HLhc7&sdom=101.342.433.0_795079156:1 [Report Only] Refused to load the script 'about:blank' because it violates the following Content Security Policy directive: "default-src 'self' 'unsafe-eval' 'unsafe-inline' data: *.aliexpress.com *.aliunicorn.com *.alipay.com *.aliyun.com *.alicdn.com *.aliimg.com *.alibaba.com *.alisoft.com *.doubleclick.net *.mmstat.com *.greencompute.org *.video.taobao.com *.itao.com *.tbcdn.cn *.taobaocdn.com *.akamaihd.net *.taobao.com www.google-analytics.com https://stylessl.aliunicorn.com https://assets.alicdn.com https://ynuf.alipay.com https://login.alibaba.com https://login.aliexpress.com *.amap.com *.cnzz.com *.cnzz.net apis.google.com *.googleapis.com translate.google.com www.gstatic.com https://www.google.com bs.yandex.ru mc.yandex.ru vk.com *.vk.me *.facebook.com connect.facebook.net static.criteo.net *.criteo.com". Note that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.

我有一个镀铬广告拦截器,但即使我将其关闭,我仍然会遇到这种情况。我想纠正它,但为了做到这一点,我必须找出问题所在。

2 个答案:

答案 0 :(得分:3)

右键单击禁用很可能来自event.preventDefault的使用,其他答案描述为获取此行为的方法; here's one picked more or less at random

尝试找出造成这种情况的脚本的一种方法是使用Chrome网络检查器并在所有来源(Windows上的ctrl + shift-F)中搜索“preventDefault”并在每次调用时抛出一个断点,然后右键单击相应的元素或元素,看看是否遇到了断点。

无法选择文本可能是由于使用了(非标准轨道)CSS属性user-select。如果在Web检查器的“元素”选项卡中找到无法选择的元素,则可以查看其计算的CSS样式,并查看user-select属性是否设置为none

答案 1 :(得分:1)

控制台说你有CSP违规。 CSP代表内容安全策略,列表显示所有无法运行JavaScript的域。

这可以由您的广告拦截器或网站标题添加。根据它的声音,广告拦截器未正确停用。