Phonegap window.open插入innerHTML

时间:2016-03-07 10:24:07

标签: javascript jquery cordova phonegap-plugins phonegap-build

我想在打开外部网站时添加innerhtml内容(Just Anchor Link)。

下面的代码用于在inAppBrowser中打开外部网站。 var ref = window.open(url,'_ blank','location = yes');

我尝试使用以下代码添加innerhtml但不将内容添加到已打开的网站。你能建议一个解决方案吗?

ref.addEventListener('loadstop', function() {
  //Page loaded! some code here..
  ref.executeScript({
    code: "var evaluateFeedback =   
    function() {
    return 'Done';
  };
  "},

    function(data) {
    ref.document.body.innerHTML =
      "<b>Hello, stackoverflow!   < /
    b > ";

  }
  );
});

1 个答案:

答案 0 :(得分:0)

ref是对inAppBrowser对象的引用,您不能ref.document.body.innerHTML,因为inAppBrowser对象没有文档属性< / p>

您以错误的方式使用executeScript,您要注入的代码是代码参数上的代码。

如果你这样做,它将起作用:

var ref = cordova.InAppBrowser.open('http://apache.org', '_blank', 'location=yes,toolbarposition=top');
ref.addEventListener('loadstop', function() {
    ref.executeScript({code: "document.body.innerHTML = '<b>Hello, stackoverflow!</b>';"});
});

但这只会用Hello,stackoverflow取代你的网站内容!消息,如果你想附加它,你应该使用

var ref = cordova.InAppBrowser.open('http://apache.org', '_blank', 'location=yes,toolbarposition=top');
ref.addEventListener('loadstop', function() {
    ref.executeScript({code: "document.body.innerHTML = document.body.innerHTML +'<b>Hello, stackoverflow!</b>';"});
});