【问题标题】:Radio button causing crash of extenrion单选按钮导致扩展崩溃
【发布时间】:2013-11-03 07:28:22
【问题描述】:

我正在尝试在 chrome 扩展程序中插入一些 twitter 引导单选按钮,但每当我单击非活动按钮时,扩展程序都会重新加载并且按钮保持原样。

我在重新加载前的短暂时刻注意到扩展控制台正在输出 source-scr 自我安全问题。

只是为了确保我已经从扩展中完全删除了所有 js(甚至不是 1 行),但令我惊讶的是问题仍然存在。不过不是安全错误。

我不知道是什么导致了问题...

这是收音机 btn 之一

<span class="btn-group" data-toggle="buttons-radio" style="width:100%">
    <button class="btn btn-inverse" style="width:50%">First</button>
    <button class="btn btn-inverse active" style="width:50%">Second</button>
</span>

目前整个扩展中根本没有js,在head中调用它之前。

当我点击First时出现问题,这是不活动的btn。

【问题讨论】:

  • 只有这么多信息,连我们都没有想法

标签: javascript jquery twitter-bootstrap google-chrome-extension radio-button


【解决方案1】:

这可能是由于内容安全策略阻止了内联样式的使用。 您可以在CSP for Chrome extensions page 上查看更多信息。

您可以通过在清单文件中添加 style-src 'self' 'unsafe-inline'; 来放宽样式的 CSP。

"content_security_policy": "default-src 'self' style-src 'self' 'unsafe-inline';" 

这将允许您在扩展程序中继续使用内联样式。

【讨论】:

  • 我已经添加了一个解决方案,但我仍然不能 100% 确定发生了什么。我已尝试按照您的建议添加 CSP,但如果无线电 btns 在表单内,问题仍然存在..
【解决方案2】:

所以我发现问题在于无线电元素位于 form 元素内

我已经一点一点地重写了整个事情,当我将无线电 btns 包裹在表单中时,问题才出现。

我不知道为什么会这样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-28
    • 2020-05-21
    • 2020-03-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多