Firefox Quantum私密浏览器无法加载通过JavaScript添加的脚本。

5

我正在尝试通过在用户同意之前不加载我们的分析脚本来适应GDPR。

我正在使用的方法在我们支持的每个浏览器中都按预期工作,但在FF Quantum的私密浏览窗口中却无法正常工作。(如果有帮助的话,它在Chrome隐身模式下按预期工作)

以下是我正在使用的代码:

/**
 * @name loadAnalytics
 * @function
 * @param {boolean} [consented] Determines if the consent click event should be tracked
 */
function loadAnalytics( consented ){
    if( analyticsExists() ) return callbackAnalytics( consented );
    if( !window.analyticsScriptURL ) return;
    var script = document.createElement( 'script' );
    script.src = analyticsScriptURL;
    script.type = 'text/javascript';
    script.async = true;
    script.onload = script.onreadystatechange = callbackAnalytics.bind( this, consented );
    document.head.appendChild( script );
}

这是一个安全性问题还是我遗漏了什么?

请问您能否检查一下开发控制台是否显示了错误信息? - kucing_terbang
没有任何错误。这非常奇怪。脚本出现在 DOM 中,但火狐浏览器的私人窗口无法加载它,在普通窗口中可以正常加载。 - Dave Maison
有趣。是否有任何网址我可以尝试在我的本地工作站上检查它?因为我尝试了来自此处的脚本,它似乎运行良好 https://www.w3schools.com/js/myScript.js - kucing_terbang
很遗憾,我们的开发服务器无法在我们的网络之外访问,或者更确切地说,它们不应该被访问。 - Dave Maison
@kucing_terbang 看起来你的脚本是可行的,因为它不是一个分析脚本。请参阅下面的被接受的答案以获取更多信息。 - Dave Maison
1个回答

3

太棒了,这样就解决了问题!不幸的是,对于这个问题没有用户友好的解决方案,但至少知道了。 - Dave Maison

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接