2017-02-21 41 views
2

私はボタンをクリックすると、私はクリックイベントにイオン2のinAppBrowserプラグインの "executeScript"メソッドの使用方法は?

let browser = new InAppBrowser('http://example.com/test', '_self'); 
browser.executeScript({code: "(function() { alert(123); })()"}); 

をこのコードを持って、inAppBrowserページを開きますが、スクリプトは実行されません。
ブラウザを閉じてもう一度ボタンをクリックすると、スクリプトが実行されます。

なぜ初めて実行されないのですか?

答えて

3

InAppBrowser.addEventListener(loadstart、loadstop、loaderror)内にexecuteScriptを追加すると、初めて実行されます。私はイオン1を使用していますが、イオン2でも動作すると思います。以下のサンプルコードを追加しました。 (これはイオン1のように見えます)。

browser.addEventListener('loadstart', function(){ 
      browser.executeScript({code: "(function() { alert(123); })()"}); 
     }) 
+0

addEventListenerを実行しようとすると、「プロパティ 'addEventListener'がタイプ 'InAppBrowser'に存在しません。ここで何が起こっていますか? – rashadb

+0

[cordova-plugin-inappbrowser](https:// github。 com/apache/cordova-plugin-inappbrowser)? –

+0

私はやったし、そのメソッドは、Ionicラップバージョンの一部ではありません。私は通常のコードバージョンを使用してアクセスを得ました。 – rashadb

1

これはもうこの方法では機能しません。それを試してみてください!

browser.on('loadstop').subscribe(() => { 
    browser.executeScript({code: 'your_code'}) 
}); 

これは私のために働いています。

関連する問題