亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? joeyoverlay.js

?? Joey is j2me client server application for for mobile platform. Build on top j2mepolish
?? JS
?? 第 1 頁 / 共 3 頁
字號:
    	g_joey_gBrowser.selectedBrowser    	               .contentDocument    	               .addEventListener("mousemove"    	                                 ,sigmaCall    	                                 ,false);        omegaCall = function(e) { thisInstance.mouseClickListener(e) };            	g_joey_gBrowser.selectedBrowser    	               .contentDocument    	               .addEventListener("mousedown"    	                                 ,omegaCall     	                                 ,false);            deltaCall = function(e) { thisInstance.keyDownListener(e) };            	g_joey_gBrowser.selectedBrowser    	               .contentDocument    	               .addEventListener("keydown"    	                                 ,deltaCall     	                                 ,false);	    this.runtimer();    // timer-based refresh function..	        },        disable: function () {        if (this.enabled == false)            return;        joeyDumpToConsole("g_joeySelectorService disable");            clearTimeout(this.timer);        this.timer = null;        if (sigmaCall !=null)            g_joey_gBrowser.selectedBrowser         	               .contentDocument    	                   .removeEventListener("mousemove"                                                ,sigmaCall                                                ,false);                if (omegaCall != null)            g_joey_gBrowser.selectedBrowser         	               .contentDocument    	                   .removeEventListener("mousedown"                                                ,omegaCall                                                 ,false);        if (deltaCall != null)            g_joey_gBrowser.selectedBrowser        	               .contentDocument        	               .removeEventListener("keydown"                                                ,deltaCall                                                 ,false);        this.removeBox();        this.associatedDocument    = null;           this.currentEvent          = null;        this.previousTargetElement = null;                   this.enabled = false;    },    mouseMoveListener: function (e) {		if (this.previousTargetElement != e.target) {			this.currentEvent = e;			this.previousTargetElement = e.target;		}                                     },    mouseClickListener: function (e) {        try {        if(e.button == 0) {            /*              * We may revisit this to elect target elements              * if they make sense. For example I assume we dont want to elect              * the hole page. .. or not :)              */             	        joey_selectedTarget(this.currentEvent.target);            e.preventDefault(); // eat the event        }            	} catch (e) {}	    this.disable();    },    keyDownListener: function (e) {        this.disable();        e.preventDefault();    },    createBox: function () {                var newDiv= this.associatedDocument.createElementNS("http://www.w3.org/1999/xhtml", "div");                newDiv.style.position="absolute";                newDiv.style.zIndex="1000";                newDiv.style.background="url(chrome://joey/skin/selector-tile.png)";                newDiv.style.border="0px";                newDiv.style.height="4px";                this.currentElementTop=newDiv;                                   	                var newDiv= this.associatedDocument.createElementNS("http://www.w3.org/1999/xhtml", "div");                newDiv.style.position="absolute";                newDiv.style.zIndex="1000";                newDiv.style.background="url(chrome://joey/skin/selector-tile.png)";                newDiv.style.left="0px";          	                newDiv.style.border="0px";          	                newDiv.style.height="4px";                this.currentElementBottom=newDiv;                this.currentElementTop.appendChild(this.currentElementBottom);    	                var newDiv= this.associatedDocument.createElementNS("http://www.w3.org/1999/xhtml", "div");                newDiv.style.position="absolute";                newDiv.style.zIndex="1000";                newDiv.style.top="0px";                newDiv.style.left="0px";                newDiv.style.width="4px";                newDiv.style.background="url(chrome://joey/skin/selector-tile.png)";                newDiv.style.border="0px";                                this.currentElementLeft=newDiv;                this.currentElementTop.appendChild(this.currentElementLeft);    	                var newDiv = this.associatedDocument.createElementNS("http://www.w3.org/1999/xhtml", "div");                newDiv.style.position="absolute";                newDiv.style.zIndex="1000";                newDiv.style.top="0px";                newDiv.style.width="4px";                newDiv.style.background="url(chrome://joey/skin/selector-tile.png)";                newDiv.style.border="0px";                                this.currentElementRight=newDiv;                this.currentElementTop.appendChild(this.currentElementRight);                                try {                    this.associatedDocument.body.appendChild(this.currentElementTop);                } catch (ignore) {                    joeyDumpToConsole(ignore);                }                                },     removeBox: function () {            try {                    if(this.currentElementTop.parentNode) {                this.currentElementTop.parentNode.removeChild(this.currentElementTop);        	}        	         	        } catch (i) { joeyDumpToConsole(i) }          	        	    },    runtimer: function() {        try {            /*              * We want UI to be smooth so we keep this at 150 miliseconds.              * Otherwise the Contextual Box moves too much in the screen for every little DOM node.             *             */             if (this.currentEvent && this.associatedDocument) {                                var currentDocument = this.associatedDocument;                                var boxObject = currentDocument.getBoxObjectFor(this.currentEvent.target);                                const borderSize=4;                                var boxObjectX = boxObject.x - borderSize;                var boxObjectY = boxObject.y - borderSize;                var rawWidth = boxObject.width;                var rawHeight = boxObject.height;                                var restWidth = rawWidth % 4;                var restHeight = rawHeight % 4;                                var boxCounterWidth = (rawWidth - restWidth)/4 + 1;                 var boxCounterHeight = (rawHeight- restHeight)/4 + 1;                                 var boxObjectWidth  = ( rawWidth - restWidth )  + ( borderSize * 2 );                var boxObjectHeight = ( rawHeight - restHeight )  + ( borderSize * 2 ) ;                                var modOddWidth = boxCounterWidth % 2;                var modOddHeight = boxCounterHeight % 2;                                        if( parseInt(modOddWidth) == 0) {                    boxObjectWidth+=4;                    boxObjectX-=4;                }                            if( parseInt(modOddHeight) == 0) {                    boxObjectHeight+=4;                    boxObjectY-=4;                }                                this.currentElementTop.style.top=boxObjectY+"px";                this.currentElementTop.style.left=boxObjectX+"px";                this.currentElementTop.style.width=boxObjectWidth+"px";                this.currentElementBottom.style.top=boxObjectHeight+"px";                this.currentElementBottom.style.width=boxObjectWidth+4+"px";                this.currentElementLeft.style.height=boxObjectHeight+"px";                this.currentElementRight.style.left=boxObjectWidth+"px";                this.currentElementRight.style.height=boxObjectHeight+4+"px";                            } // end of current event...                        if (this.associatedDocument) {                this.timer = setTimeout("g_joeySelectorService.runtimer()",122);            }	        }        catch(e)        {            // if any of this fails, just kill it.            setTimeout(g_joeySelectorService.disable, 0);        }    } // end of runtimer      }/** * Determine whether a node's text content is entirely whitespace. * * @param nod  A node implementing the |CharacterData| interface (i.e., *             a |Text|, |Comment|, or |CDATASection| node * @return     True if all of the text content of |nod| is whitespace, *             otherwise false. */function is_all_ws( nod ){  // Use ECMA-262 Edition 3 String and RegExp features  return !(/[^\t\n\r ]/.test(nod.data));}/** * Determine if a node should be ignored by the iterator functions. * * @param nod  An object implementing the DOM1 |Node| interface. * @return     true if the node is: *                1) A |Text| node that is all whitespace *                2) A |Comment| node *             and otherwise false. */function is_ignorable( nod ){  return ( nod.nodeType == 8) || // A comment node         ( (nod.nodeType == 3) && is_all_ws(nod) ); // a text node, all ws}/** * Version of |previousSibling| that skips nodes that are entirely * whitespace or comments.  (Normally |previousSibling| is a property * of all DOM nodes that gives the sibling node, the node that is * a child of the same parent, that occurs immediately before the * reference node.) * * @param sib  The reference node. * @return     Either: *               1) The closest previous sibling to |sib| that is not *                  ignorable according to |is_ignorable|, or *               2) null if no such node exists. */function node_before( sib ){  while ((sib = sib.previousSibling)) {    if (!is_ignorable(sib)) return sib;  }  return null;}function joey_buildXPath(targetElement){    if (targetElement == null)        return null;    var buffer = "";    var cur = targetElement;    do {        var name = "";        var sep = "/";        var occur = 0;        var ignore = false;        var type = targetElement.nodeType;         //        alert(buffer);        if (type == Node.DOCUMENT_NODE)        {            buffer = "/" + buffer;            break;        }        else if (type == Node.ATTRIBUTE_NODE)        {            sep = "@";            name = cur.nodeName;            next = cur.parentNode;        }        else        {            if (type == Node.ELEMENT_NODE) {                if (cur.nodeName.toLowerCase() == "a"      || cur.nodeName.toLowerCase() == "img" ||                    cur.nodeName.toLowerCase() == "ul"     || cur.nodeName.toLowerCase() == "document" ||                    cur.nodeName.toLowerCase() == "document" ||                    cur.nodeName.toLowerCase() == "font"   || cur.nodeName.toLowerCase() == "#document" )                    ignore = true;                var id = null;                try {// why would this throw?                    id = cur.getAttribute('id');                } catch (e) {}                if (id != null) {                                        if (buffer == "")                    {                        buffer = "id('"+id+"')";                        return buffer;                    }                    buffer = "id('" + id + "')" + buffer;                    return buffer;                }            }            name = cur.nodeName.toLowerCase();            next = cur.parentNode;            // now figure out the index            var tmp = node_before(cur);            while (tmp != null) {                if (name == tmp.nodeName.toLowerCase()) {                    occur++;                }                tmp = node_before(tmp);            }            occur++;                        if (type != Node.ELEMENT_NODE) {                // fix the names for those nodes where xpath query and dom node name don't match                if (type == Node.COMMENT_NODE) {                    ignore = true;                    name = 'comment()';                }                else if (type == Node.PI_NODE) {                    ignore = true;                    name = 'processing-instruction()';                }                else if (type == Node.TEXT_NODE) {                    ignore = true;                    name = 'text()';                }                // anything left here has not been coded yet (cdata is broken)                else {                    name = '';                    sep = '';                    occur = 0;                }            }        }        if (cur.nodeName.toLowerCase() == "html" ||            cur.nodeName.toLowerCase() == "body" )            occur = 0;        if (ignore == true) {        }        else if (occur == 0) {            buffer = sep + name + buffer;        }        else {            buffer = sep + name + '[' + occur + ']' + buffer;        }        ignore = false;                cur = next;            } while (cur != null);    return buffer;}function toXMLString(str) {    return str.replace(/&/g, "&amp;").replace(/>/g, "&gt;").replace(/</g, "&lt;").replace(/\'/g, "&apos;").replace(/\"/g, "&quot;");}function joey_selectedTarget(targetElement){    g_joey_isfile = false;    var focusedWindow = document.commandDispatcher.focusedWindow;    g_joey_url  = focusedWindow.location.href;    g_joey_title = "Microsummary from : " + focusedWindow.location.href;     g_joey_content_type = "microsummary/xml";    var xpath = joey_buildXPath(targetElement);    /*      var xpath = prompt("enter an xpath");    if (!confirm (xpath))        return;    */    var uuidGenerator =  Components.classes["@mozilla.org/uuid-generator;1"].getService(Components.interfaces.nsIUUIDGenerator);    var uuid = uuidGenerator.generateUUID();    var uuidString = uuid.toString();    var str = '<?xml version="1.0" encoding="UTF-8"?>\n'		+ '<generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="Microsummary for '		+ toXMLString(focusedWindow.location.href) + '" '		+ 'uri="urn:' + uuidString + '">\n'		+ ' <pages>\n'		+ '   <include>' 		+ toXMLString(focusedWindow.location.href)		+ '</include>\n';    var hint = toXMLString(targetElement.innerHTML);    hint ="";    str += ' </pages>\n'		+ ' <template>\n'		+ '   <transform xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">\n'		+ '     <output method="text"/>\n'		+ '     <template match="/">\n'		+ '       <value-of select="' + xpath + '"/>\n'		+ '     </template>\n'		+ '   </transform>\n'		+ ' </template>\n'        + '<hint>' + hint + '</hint>'		+ '</generator>\n';    //    alert(str);    g_joey_data = str;    uploadDataFromGlobals(false);}/*  *  */function joey_enableSelection() {    g_joeySelectorService.enable();}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品99一区二区| 6080yy午夜一二三区久久| 九色|91porny| 久久国产尿小便嘘嘘尿| 日本视频在线一区| 麻豆精品久久久| 韩日av一区二区| 国产一区二区三区免费播放 | 欧美一级片在线观看| 69久久夜色精品国产69蝌蚪网| 欧美日韩精品三区| 欧美一区二区三区视频免费| 日韩美一区二区三区| 精品国产一区二区亚洲人成毛片| 日韩免费高清视频| 国产欧美日韩视频一区二区| 欧美韩国一区二区| 国产精品福利在线播放| 综合分类小说区另类春色亚洲小说欧美| 《视频一区视频二区| 一区二区三区国产| 奇米一区二区三区av| 狠狠色丁香久久婷婷综| 成人深夜在线观看| 91玉足脚交白嫩脚丫在线播放| 91欧美一区二区| 欧美一区二区在线视频| 国产视频一区不卡| 亚洲精品乱码久久久久久日本蜜臀| 亚洲韩国精品一区| 黄色资源网久久资源365| 一道本成人在线| 欧美大尺度电影在线| 国产精品系列在线| 图片区日韩欧美亚洲| 国产精品一区二区在线观看网站| 91蝌蚪porny九色| 欧美一区在线视频| 亚洲天天做日日做天天谢日日欢 | 在线视频一区二区免费| 91精品国产欧美一区二区成人 | 国产一区在线看| 在线观看www91| www激情久久| 亚洲国产一区二区三区青草影视 | 在线观看一区日韩| www欧美成人18+| 亚洲午夜免费电影| 99综合影院在线| xf在线a精品一区二区视频网站| 亚洲黄色片在线观看| 国产精品99精品久久免费| 91国偷自产一区二区三区成为亚洲经典 | 久久国产精品99久久人人澡| 色婷婷久久久综合中文字幕 | 午夜日韩在线观看| 波多野结衣在线aⅴ中文字幕不卡| 69av一区二区三区| 一个色妞综合视频在线观看| 国产麻豆成人精品| 精品免费视频一区二区| 肉丝袜脚交视频一区二区| 91精品1区2区| 日韩伦理电影网| 国产成人精品午夜视频免费| 亚洲精品在线观| 蜜桃av一区二区三区| 91精品国产麻豆国产自产在线| 一区二区三区欧美| 欧美亚洲精品一区| 亚洲一区二区在线播放相泽| 欧美人牲a欧美精品| 亚洲成a天堂v人片| 欧美日韩黄色一区二区| 亚洲 欧美综合在线网络| 欧美无砖砖区免费| 亚洲成人第一页| 欧美精三区欧美精三区| 日韩电影免费在线| 日韩一二三四区| 久久国产麻豆精品| 国产欧美精品在线观看| 国产成人午夜高潮毛片| 国产精品每日更新| 色先锋久久av资源部| 夜夜嗨av一区二区三区中文字幕| 色国产精品一区在线观看| 亚洲高清一区二区三区| 欧美另类久久久品| 精品一区二区日韩| 国产欧美日韩中文久久| 99国内精品久久| 一区二区激情小说| 在线电影院国产精品| 美国毛片一区二区| 久久免费午夜影院| 99久久久久久| 亚洲成人激情自拍| 久久亚洲精品小早川怜子| 成人国产亚洲欧美成人综合网 | 欧美三级韩国三级日本三斤| 婷婷六月综合网| 国产亚洲美州欧州综合国| 99精品视频在线免费观看| 性做久久久久久免费观看欧美| 日韩欧美在线观看一区二区三区| 国产精品一区二区91| 一区二区三区四区视频精品免费| 91精品国产综合久久精品图片| 国产美女精品人人做人人爽| 亚洲免费成人av| 欧美成人猛片aaaaaaa| 成人国产精品免费网站| 日日骚欧美日韩| 中文一区一区三区高中清不卡| 欧美日韩精品系列| www.66久久| 久久国产精品色婷婷| 一区二区三区四区乱视频| 久久只精品国产| 欧美日精品一区视频| 国产成人一区在线| 亚洲国产精品久久久久婷婷884 | www.日韩av| 老鸭窝一区二区久久精品| 亚洲精品视频免费观看| www一区二区| 日韩一级片在线播放| 欧美最猛性xxxxx直播| 国产v综合v亚洲欧| 九九在线精品视频| 日本成人中文字幕| 午夜天堂影视香蕉久久| 中文字幕一区二区三区精华液| www国产亚洲精品久久麻豆| 欧美精品亚洲一区二区在线播放| 一本久久a久久免费精品不卡| 国产成人免费高清| 91电影在线观看| 97se亚洲国产综合自在线| 国产成人av资源| 久久99国产精品成人| 美女视频网站黄色亚洲| 首页欧美精品中文字幕| 亚洲一区二区三区视频在线| 亚洲人精品一区| 日韩一区欧美小说| 国产欧美精品国产国产专区| 久久综合99re88久久爱| 精品少妇一区二区| 久久综合色婷婷| 久久中文字幕电影| 国产欧美一区二区在线| 国产区在线观看成人精品| 久久久精品一品道一区| 国产日本欧美一区二区| 国产精品麻豆久久久| 中文字幕一区在线观看视频| 欧美韩日一区二区三区| 亚洲图片激情小说| 一区二区三区在线观看网站| 亚洲一区中文日韩| 日韩精品一卡二卡三卡四卡无卡| 午夜电影一区二区三区| 免费xxxx性欧美18vr| 精品一区二区三区免费| 国产在线观看一区二区| jiyouzz国产精品久久| 欧美亚洲综合一区| 欧美一二三区在线| 久久久噜噜噜久久中文字幕色伊伊 | 婷婷国产v国产偷v亚洲高清| 日韩av电影免费观看高清完整版 | 亚洲va欧美va国产va天堂影院| 日韩激情一二三区| 精品一区二区三区在线观看 | 91精品国产色综合久久ai换脸| 日韩精品一区二区三区中文不卡| 久久久综合视频| 最新日韩在线视频| 午夜精品久久久久久久99樱桃| 久久99精品网久久| 成人网在线免费视频| 欧美日韩一区二区三区在线| 精品国产一区二区三区不卡 | 欧美午夜精品一区| 欧美精品一区二区三区在线| 亚洲免费av在线| 国产一区二区在线视频| 91视频观看免费| 欧美大片拔萝卜| 亚洲免费av网站| 精品一区二区成人精品| 91蝌蚪国产九色| 久久九九久久九九| 亚洲成人自拍偷拍| 粉嫩一区二区三区在线看| 91精品国产一区二区三区香蕉| 亚洲桃色在线一区| 国产乱码精品一品二品|