我正在将Chrome扩展程序从清单v1转换为清单v2。
我从html文件中提取了大部分javascript代码,并将其放在单独的.js文件中。
我在弹出窗口中遇到div元素的问题。
popup.html中的当前代码是:
<div onclick="PopupClick('SHOW')" id="blue">Show</div>
从v2开始,html中不允许使用onclick =“”,但是如何替换它, 这样用户可以点击div并执行一个函数吗?
答案 0 :(得分:5)
popup.html:
<script src="popup.js" type="text/javascript"></script>
<div id="blue">Show</div>
popup.js:
document.addEventListener('DOMContentLoaded', function () {
document.getElementById("blue").addEventListener('click',
clickHandler); });
function clickHandler(e) { PopupClick('SHOW'); }
function PopupClick(str) {
//Do your thing here
}
就像Rob W所说的那样,在http://developer.chrome.com/extensions/contentSecurityPolicy.html#H3-1
中很清楚我实际上遇到了这个问题,这段代码帮助我从manifest v1转到v2。
答案 1 :(得分:2)
也许是活动?在<script src="js/my_script.js">
的头部添加popup.html
之类的内容,然后将代码粘贴到该js文件中。
var blueDiv = document.getElementById("blue");
blueDiv.addEventListener("click", function(){
PopupClick("SHOW");
}, false);
或者您应用的某些细节不允许您这样做?或者我不明白这个问题。