2016-03-01 271 views
0

我张贴这个问题没有代码,我没有把它接入ATM,但该网页关心可以参考这里:内容安全策略+表格插件

http://sensing-precision.com/equipment-hire/

我有内容包含在DIV中的可链接DIV与

display:none 

设置为使内容不可见。我正在使用jQuery脚本启用将隐藏内容加载到目标DIV中:

ITarget 

我的问题是查询表单。我在Wordpress上使用名为Ninja Forms的插件,表单工作正常。在将其嵌入到此页面之前,我已对其进行了测试。但是,由于某种原因,将它放在这个“隐藏的”内容部分,并通过点击“查询表单”链接时通过jQuery加载它会导致错误。点击提交按钮查看我的意思。

现在我最近通过.htaccess文件设置了内容安全策略,我感觉我没有设置我需要设置的东西。

我已经包括了

'self' 'unsafe-inline' and 'unsafe-eval' 
在该网站所需的特定外部网站之间的脚本-SRC

。但我无法理解,为什么如果我将这种形式简单地嵌入到页面上,或者甚至隐藏在DIV外部的同一页面上,它就能正常工作。但隐藏表单并将其加载到目标DIV会导致javascript错误?

回答

0

Javascript不能将子元素的初始化为display:none。您可以尝试设置visibility:hidden,或者正常加载并使用javascript隐藏它,即。

$(document).ready(function($){ 
    $(".yourdiv").hide(); 
)}; 

我不确定这是否能够解决您的问题,尽管它看起来像是服务器端的故障。你能在小提琴中发布更完整的例子吗?

+0

'.hide()'实际上改善了我认为的页面的性能,但是您的怀疑是正确的,但它没有解决问题。我已经尝试了'visibility:hidden'路线,但是没有骰子。 –

+0

我也错了,它是一个内容安全策略问题,我删除了整个CSP并得到了相同的错误.... –