2016-11-02 11 views
0

私は今、いくつかの奇妙な問題で取り組んでいます。私はAdBlockをまたはABPのプラグインフィルタリストに追加されたリンクを作成しているようないくつかの例外:AdBlockサブスクリプションリンクはJavaScriptを実行していません

AdBlockをフィルタファイル(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&amp;title=Sometitle" class="button">Turn off AdBlock</a> 

何か不思議なことがあれば、リンクはhereに作成できます。

うまく動作し、ポップアップが表示され、フィルタが追加されます。問題は、スクリプトを実行していない簡単なJavaScript関数(f.ex.をGoogleアナリティクスに送信する場合、またはちょうどalert('something'))を実行したい場合です。既に、この特定のリンクを使用している間、JavaScriptを実行していないだけで、何も動作していないように、クリック、トリガー、jQuery、onclick(でもjavascript:function())をシミュレートして、

これは多分誰かが同じ問題を持って、それを解決し

<a href="abp:subscribe?location=path/to/adblock/adblock_dictionary.txt&amp;title=Sometitle" class="button" onclick="function()">Turn off AdBlock</a> 

<script type="text/javascript"> 
function() { 
    alert('Something'); // or other stuff 
} 
</script> 

が動作していませんか?どんなコンセプトでもそれを解決する方法に感謝します。

更新

まだそのためのsoultionはありません。 :)

答えて

0

ここでアンカータグが呼び出される関数は、正しく実行されるためにはtrueを返さなければならないので、それを行うには良い方法ではありません。

あなたはそのような何かかかわらず行うことができます:あなたが機能でやりたいことができます。もちろん、

function myFunction() { 
    var url = 'abp:subscribe?location=path/to/adblock/adblock_dictionary.txt&amp;title=Sometitle' 
    var win = window.open(url, '_blank'); 
    win.focus(); 
} 

<a href="javascript:myFunction();">Link</a> 

そして、あなたのJSファイルインチ

+0

これらの3行は機能していますが、 'VM11561:1 Uncaught ReferenceError:myFunctionは定義されていません(...)'とコメントして 'console.log'を書くと動作します。不思議そうですね。とにかくこのリンクは、何か変わったことです...ブラウザのアドレス入力で実行しようとすると、googleは実行されません。しかし、それは 'href'にありますが、それは動作します。 –

+0

それは単純な関数であることが奇妙です。代わりにアンカーを使わないようにしましたか? '

Link
'のように –

+0

私は' = 'の代わりに': 'があるのを見ていませんでした。とにかく今すぐ 'about:blank'に行きます。このリンクではなく' console.log'ログに行きます。すでに '

Turn off AdBlock
'としましたが、それでも同じ動作です。 –

関連する問題