# iBookmarkLet **Repository Path**: Tech_Query/iBookmarkLet ## Basic Information - **Project Name**: iBookmarkLet - **Description**: 网页浏览器 收藏栏小工具 集合 - **Primary Language**: JavaScript - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 16 - **Forks**: 2 - **Created**: 2014-11-24 - **Last Updated**: 2023-04-18 ## Categories & Tags **Categories**: chrome-plugins **Tags**: None ## README # iBookmarkLet **Web 2.0** 时代,各种互联网公司都想靠 **网页浏览器** 来圈地、圈钱,争相推出自己的原创/马甲浏览器,功能或简或繁,但总有些 **实用功能**缺这少那…… 而且即便内核相同,扩展插件的 API 也互不兼容,一个实用插件往往要为有较大用户基数的浏览器维护不同的源码、安装包……   所以,若 **标准 HTML/CSS/JavaScript** 能解决的问题,我们就可以用 `javascript:` 这样的通用协议,把 JS 插件封装成一个 **收藏栏按钮**,每次只需轻轻一点~   如果 **Bookmarklet** 这样的空间、权限有限的技术很难满足新需求,那本项目的程序源码也可以作为各种版本浏览器插件的蓝本(核心逻辑)来用~  【注】本项目的安装代码均使用 [UglifyJS](http://www.oschina.net/p/uglifyjs) 压缩 ## 【网页浮层一键清除】v0.5 **发布博文** —— http://log.fyscu.com/index.php/archives/118/ ### 主要特性 1. 可清除 **网页中任一位置的浮动广告** 2. 可清除 **遮蔽整个网页的登录框** 3. 可清除 **笼罩整个网页的透明弹窗广告超链接** 4. 可清除 **网页正文图片边缘的浮动广告**(一般在第二次点击本工具时成功,但此时会误杀一些网页本身的功能浮层,可能会影响某些功能的使用, **建议在纯阅读时二次点击本工具**) ### 安装代码 javascript: (function(a,b){function c(a,b){return[].slice.apply(a.getElementsByTagName(b))}function d(a,c){var d=a.currentStyle?a.currentStyle.getAttribute(c):b.defaultView.getComputedStyle(a,null).getPropertyValue(c),e=Number("0px"==d?0:d);return isNaN(e)?d:e}function e(a,b){for(var c=0;ce;e++)try{if(a.parentNode===c)return 1;if(a.parentNode===b)break;a=a.parentNode}catch(f){console.log(f)}}function g(c){var g=e(c,[["display","none"],["visibility","hidden"],["width",0]]),h=!g&&e(c,[["position","absolute"],["position","fixed"]]);return h&&(a.FLC?!0:d(c,"z-index")>100)?f(c,b.body,a.FLC?13:3):void 0}var k,i,j,h=c(c(b,"body")[0],"*");for(i=0,j=0;i3)b.splice(-1,1);else{if("www."===b[2].slice(0,4))return alert("当前网址已是该网站的顶端,不能再回溯了~");d=b[2].split("."),d.splice(0,1),d.length<3&&d.splice(0,0,"www"),b[2]=d.join(".")}a.location.href=b.join("/")})(top); ## 【网页代码 行内化】v0.2 **发布博文** —— http://my.oschina.net/TechQuery/blog/638707 ### 主要特性 1. 支持 **图片文字水印**,方便 **论坛发帖**、 **微信公众号文章编辑**(配合使用下面的 HTML 代码插入工具) 2. 若网页中有较多、较大图片,编码时间会略长 3. 较老的浏览器内核可能会产生较多的 **内联样式**代码 ### 安装代码 javascript: (function(a,b){function c(a){return JSON.parse(JSON.stringify(a.ownerDocument.defaultView.getComputedStyle(a)))}function f(a){var f,b=e.contentWindow.document;return d[a]||(f=b.createElement(a),b.body.appendChild(f),d[a]=c(f),b.body.removeChild(f)),d[a]}function g(){var e,a={},b=c(arguments[0]),d=f(arguments[0].tagName.toLowerCase());for(e in b)!isNaN(Number(e))||e.match(/^(moz|webkit|ms)/)||b[e]==d[e]||e.match(/width|height/i)||(a[e]=b[e]);return a}var d={},e=b.createElement("iframe");e.style.display="none",b.body.appendChild(e),a.CSS_Inline=function(){var b,a=g(arguments[0]);for(b in a)arguments[0].style[b]=a[b]},a.Image_Inline=function(a,c){var f,d=new Image,e=b.createElement("canvas");d.crossOrigin="",f=e.getContext("2d"),d.onload=function(){e.width=d.width,e.height=d.height,f.drawImage(d,0,0),c&&(f.font="20px sans-serif",f.fillStyle="white",f.fillText(c,10,d.height-15)),a.src=e.toDataURL("image/png"),d=null},d.src=a.src},a.Web_Inline=function(){var b,a=arguments[0].querySelectorAll("*");for(b=0;b`、`