2016-03-07 36 views
0

我喜欢在外部网站打开时添加innerhtml内容(Just Anchor Link)。Phonegap window.open insert innerHTML

下面的代码用于在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 > "; 

    } 
); 
}); 

回答

0

ref是对inAppBrowser对象的引用,你不能做ref.document.body.innerHTML因为inAppBrowser对象不具有文档属性

你以错误的方式使用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>';"}); 
}); 

但是,这只有在您好,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>';"}); 
});