随手///

1.获取当前页面的网址。
2.chrome安全开发规则问题
3.获取页面html代码(未解决)
起初参考网上的代码运用的window.location.href来获取当前页面的地址,直接使用源代码打开html页面时可以正确获取到当前页面的地址,
href=window.locatoin.href;
alert(href);
function share(){

alert(href);
}
但是使用插件时(js文件已经注入到当前页面),第一个alert(href)显示当前页面地址但是第二个总是显示插件安装的地址(chrome://extensions),琢磨了许久,思考得到假想:因为在页面打开时已然调用了js中得其它部分对该页面进行操作,在调用share方法时,window.location.href会再次执行,而此次获取的是安装插件的位置。后来采用了chrome.tabs.getSelected(null,function(tab){…})方法进行操作提取当前tabs页面的url和title,进行操作,打开分享页面,但仍未掌握该方法的奥义,使用时显得繁琐。
关于chrome安全开发规则,当然这个地方是个小问题,由于chrome的安全性,不允许在html页面上能够看到被调用的方法,只需在js文件中为按钮注册事件即可。
获取页面的html代码,采用网上参考的方法,先通过DOM对象获取当前页面的html内容,而后使用sendMessage(msg,callback)和onMessage(callback)l两个方法在两个js文件之间进行数据传递,但是插件报错显示DOM获取的html内容为空,原因可能是在页面还尚未加载完全时,调用的DOM对象获取属性的操作已经开始执行,故获取为空,但具体解决办法还有待思考。
附chrome插件开发攻略:https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html

Guess you like

Origin blog.csdn.net/weixin_48299611/article/details/115474468