版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_29542611/article/details/82822133
Android WebView注入js文件,判断当前HTML有没有某个js然后再注入
1.注入js代码
判断当前有没有jQuery文件引入,然后再进行注入。
判断依据其实很简单,获取script 的dom对象 判断src的值 进行遍历就行了。
(function () {
function loadScript(url, callback) {
var script = document.createElement('script');
script.type = 'text/javascript';
if (script.readyState) {
script.onreadystatechange = function () {
if (script.readyState == 'loaded' || script.readyState == 'complete') {
script.onreadystatechange = null;
callback();
}
};
} else {
script.onload = function () {
callback();
};
}
script.src = url;
document.getElementsByTagName('head')[0].appendChild(script);
}
var hasJquery = false;
var array = document.getElementsByTagName('script');
for (var i in array) {
if (array[i].src && (array[i].src.indexOf('jquery.js') != -1 || array[i].src.indexOf('jquery.min.js') != -1)) {
hasJquery = true;
}
}
if (!hasJquery) {
loadScript('one.jquery.min.js', function () {
console.log("jquery inject ok");
});
}
}());
2.Android 注入js代码方法
mWebView.loadUrl("javascript:" + jscode_string);