我现在正在处理一些奇怪的问题。我已经创建了一个链接,它将添加到AdBlock或ABP插件过滤器列表中,一些例外情况如下:
AdBlock filter文件(adblock_dictionary.txt)
[Adblock Plus 2.0]
! Homepage: http://www.domain.com
@@||domain.com/$document专用链路
<a href="abp:subscribe?location=path/to/adblock/adblock_dictionary.txt&title=Sometitle" class="button">Turn off AdBlock</a>如果有人想知道这是什么,可以创建链接这里。
它运行良好,弹出显示,并添加过滤器。问题是,当我想执行一些简单的JavaScript函数(f.ex )时。将数据发送到Google,甚至仅仅是alert('something'))它不执行脚本。已经尝试过以多种方式运行它,模拟单击、触发、jQuery、onclick (甚至使用javascript:function()),而且似乎没有什么工作,只是在我使用这个特定链接时,它没有执行JavaScript。
这不是在工作
<a href="abp:subscribe?location=path/to/adblock/adblock_dictionary.txt&title=Sometitle" class="button" onclick="function()">Turn off AdBlock</a>
<script type="text/javascript">
function() {
alert('Something'); // or other stuff
}
</script>也许有人遇到了同样的问题并解决了它?如果有任何解决问题的想法,我将不胜感激。
更新
不过,这还没有什么可说的。寻找一个有想法的人:)
发布于 2016-11-02 14:26:10
因为在锚标记上调用的函数应该返回true才能正确执行,所以这不是像您这样做的好方法。
你可以做这样的事情:
<a href="javascript:myFunction();">Link</a>在你的js档案里:
function myFunction() {
var url = 'abp:subscribe?location=path/to/adblock/adblock_dictionary.txt&title=Sometitle'
var win = window.open(url, '_blank');
win.focus();
}当然,你可以在这个函数中做你想做的任何事情。
https://stackoverflow.com/questions/40382160
复制相似问题