📄 injection_graph_func.js
字号:
var skype_injection_path='chrome://skype_ff_toolbar_win/content/';
var skype_tool=null;
/*window.addEventListener("click",skype_click_handler,true);
function skype_click_handler(event)
{
if (skype_tool)
skype_tool.closemenu();
//HideSkypeMenuFull();
} */
//CALL BUTTON
var ActiveCallButtonPart=0;
function SetCallButtonPart(obj)
{
if (obj.getAttribute('id') == '__skype_highlight_id_left')
{
ActiveCallButtonPart=0;
}
else if (obj.getAttribute('id') == '__skype_highlight_id_right')
{
ActiveCallButtonPart=1;
}
}
function SetCallButton(obj, hl, isInternational)
{
var cb_part_l=null;
var cb_part_ml=null;
var cb_part_mr=null;
var cb_part_r=null;
if (obj.getAttribute('rtl') == 'false')
{
cb_part_l=obj.firstChild.firstChild;
cb_part_ml=obj.firstChild.lastChild;
cb_part_mr=obj.lastChild.firstChild;
cb_part_r=obj.lastChild.lastChild;
cb_flag=obj.firstChild.lastChild.firstChild;
if (cb_flag && cb_flag.isSameNode(obj.firstChild.firstChild.firstChild) == true)
cb_flag=null;
}
else
{
cb_part_l=obj.lastChild.lastChild;
cb_part_ml=obj.lastChild.firstChild;
cb_part_mr=obj.firstChild.lastChild;
cb_part_r=obj.firstChild.firstChild;
cb_flag=obj.lastChild.firstChild.lastChild;
if (cb_flag && cb_flag.isSameNode(obj.lastChild.lastChild.lastChild) == true)
cb_flag=null;
}
if (hl == 1)
{
cb_part_l.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseover_l.gif')";
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseover_m.gif')";
cb_part_mr.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseover_m.gif')";
if (isInternational=="0")
{
if (ActiveCallButtonPart==0) //left
{
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseonflag_r.gif')";
//shadow
if (cb_flag)
{
cb_flag.style.top='1px';
cb_flag.style.left='1px'; /*top right bottom left*/
cb_flag.style.padding='1px 0px 0px 1px';//'2px 0px 0px 0px';
}
}
else //right
{
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseover_r.gif')";
//flag
if (cb_flag)
{
cb_flag.style.top='0px';
cb_flag.style.left='0px';
cb_flag.style.padding='0px 1px 1px 0px';//'0px 1px 1px 0px';
cb_flag.style.margin='0px 0px 2px 0px;';
}
}
}
else
{
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_mouseover_r.gif')";
//flag
if (cb_flag)
{
cb_flag.style.top='0px';
cb_flag.style.left='0px';
cb_flag.style.padding='0px 1px 1px 0px';
cb_flag.style.margin='0px 0px 2px 0px;';
}
}
}
else
{
cb_part_l.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_normal_l.gif')";
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_normal_m.gif')";
cb_part_mr.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_normal_m.gif')";
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_normal_r.gif')";
//flag
if (cb_flag)
{
cb_flag.style.top='0px';
cb_flag.left='0px';
cb_flag.style.padding='0px 1px 1px 0px';
cb_flag.style.margin='0px 0px 2px 0px;';
}
}
}
var cb_l='';
var cb_m='';
var cb_r='';
function SetCallButtonPressed(obj, pr, isInternational)
{
var cb_part_l=null;
var cb_part_ml=null;
var cb_part_mr=null;
var cb_part_r=null;
if (obj.getAttribute('rtl') == 'false')
{
cb_part_l=obj.firstChild.firstChild;
cb_part_ml=obj.firstChild.lastChild;
cb_part_mr=obj.lastChild.firstChild;
cb_part_r=obj.lastChild.lastChild;
cb_flag=obj.firstChild.lastChild.firstChild;
if (cb_flag && cb_flag.isSameNode(obj.firstChild.firstChild.firstChild) == true)
cb_flag=null;
}
else
{
cb_part_l=obj.lastChild.lastChild;
cb_part_ml=obj.lastChild.firstChild;
cb_part_mr=obj.firstChild.lastChild;
cb_part_r=obj.firstChild.firstChild;
cb_flag=obj.lastChild.firstChild.lastChild;
if (cb_flag && cb_flag.isSameNode(obj.lastChild.lastChild.lastChild) == true)
cb_flag=null;
}
if (pr == 1)
{
cb_l=cb_part_l.style.backgroundImage;//getAttribute('src');
cb_m=cb_part_mr.style.backgroundImage;
cb_r=cb_part_r.style.backgroundImage;//getAttribute('src');
if (isInternational=="0")
{
if (ActiveCallButtonPart==0) //left
{
//obj.firstChild.firstChild.setAttribute('src', 'chrome://skype_ff_toolbar_win/content/cb_down_l.gif');
cb_part_l.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_l.gif')";
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_m.gif')";
}
else //right
{
//obj.firstChild.firstChild.setAttribute('src', 'chrome://skype_ff_toolbar_win/content/cb_down_l.gif');
cb_part_l.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_l.gif')";
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_m.gif')";
cb_part_mr.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_m.gif')";
//obj.lastChild.lastChild.setAttribute('src', 'chrome://skype_ff_toolbar_win/content/cb_down_r.gif');
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_r.gif')";
}
}
else
{
//obj.firstChild.firstChild.setAttribute('src', 'chrome://skype_ff_toolbar_win/content/cb_down_l.gif');
cb_part_l.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_l.gif')";
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_m.gif')";
cb_part_mr.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_m.gif')";
//obj.lastChild.lastChild.setAttribute('src', 'chrome://skype_ff_toolbar_win/content/cb_down_r.gif');
cb_part_r.style.backgroundImage="url('chrome://skype_ff_toolbar_win/content/cb_down_r.gif')";
}
}
else
{
//obj.firstChild.firstChild.setAttribute('src', cb_l);
cb_part_l.style.backgroundImage=cb_l;
if (cb_part_l.isSameNode(cb_part_ml) != true)
cb_part_ml.style.backgroundImage=cb_m;
cb_part_mr.style.backgroundImage=cb_m;
//obj.lastChild.lastChild.setAttribute('src', cb_r);
cb_part_r.style.backgroundImage=cb_r;
}
}
//COMMANDS
function SkypeToolBarInit(tb)
{
skype_tool=tb;
}
function doRunCMD(event, link, id, name)
{
if (skype_tool)
{
if (link == 'chdial')
{
var obj=event.originalTarget;
if (!obj)
obj=event;
/*var brd=getBounds(obj);
var docelem = document.documentElement;
if ((docelem.scrollTop == 0 && document.body.scrollTop != 0) || (docelem.scrollLeft == 0 && document.body.scrollLeft != 0))
docelem=document.body;
scrollY=docelem.scrollTop;
scrollX=docelem.scrollLeft;
var my=brd.top+16, mx=brd.left;/*brd.height*/
//var oDoc = obj.ownerDocument;
/*var obj2 = document.getBoxObjectFor(element);
var html_box = new XPCNativeWrapper(obj2).wrappedJSObject;
if (!html_box)
html_box = obj2;
var screenX = html_box.screenX;
var screenY = html_box.screenY;
*/
flagColor='rgb(184, 203, 255)';
skype_tool.chprefix(id, document, obj, screenY);
}
else if (link == 'copy')
skype_tool.copy_num(id, document);
else if (link == 'sms')
skype_tool.sms(id);
else if (link == 'add')
skype_tool.add(id, name);
else
skype_tool.call(id);
}
}
function runCMD(link)
{
HideSkypeFull();
doRunCMD(null, link, skype_curid, skype_cur_name);
}
//FLAG TOOLTIP
function HideSkypeFull()
{
// skype_active=false;
document.getElementById('skype_dc').style.visibility="hidden";
}
function ShowSkype(event, title)
{
// skype_active=true;
DoShowSkype(event.pageX, event.pageY+20, title);
}
function DoShowSkype(cX, cY, title)
{
var menu=document.getElementById('skype_dc');
menu.firstChild.nodeValue=title;
menu.style.visibility="visible";
menu.style.left=cX+'px';
menu.style.top=cY+'px';
}
var flagColor='rgb(184, 203, 255)';
function doSkypeFlag(obj,brd)
{
flagColor=brd;
}
//MENU
var skype_curid=0,skype_active=false,skype_showseed=0,skype_ctm=0,skype_cur_name='';
var curbutton=null;
function CheckCallButton(obj)
{
var res=false;
if (curbutton && curbutton.isSameNode(obj)==true)
res=true;
curbutton=obj;
return res;
}
function HideSkypeMenu()
{ //skype_tool.sd('HideSkypeMenu skype_active='+skype_active);
if(!skype_active)
HideSkypeMenuFull();
else
setTimeout("HideSkypeMenu()",1000);
}
function HideSkypeMenu2(event)
{
skype_showseed=0;
if(!skype_active)
HideSkypeMenuFull();
else
{
skype_active=false;
setTimeout("HideSkypeMenu()",1000);
}
}
function HideSkypeMenuFull()
{ //skype_tool.sd('HideSkypeMenuFull skype_active='+skype_active);
/* skype_active=false;
document.getElementById('skype_menu').style.visibility="hidden";*/
}
function CheckSkype()
{
skype_active=true;
}
function ShowSkypeMenu(event, call_msg, id, callto, isMobile, name, x, y)
{
try{
/* skype_active=true; //skype_tool.sd('ShowSkypeMenu skype_curid='+skype_curid+' callto='+callto+' id='+id);
if(document.getElementById('skype_menu').style.visibility!="hidden" && skype_curid==callto)//id
return;
skype_showseed=Math.random();
clearTimeout(skype_ctm);
var obj=event.originalTarget;
if (!obj)
obj=event;
// var brd=getBounds(obj);
//var pcx=brd.left, pcy=brd.top+16;/*brd.height;* / //alert(pcx+'--'+pcy);
scrolls=getDivScroll(obj);
var pcx = x+scrolls.left, pcy = y+scrolls.top;
skype_ctm=setTimeout('DoShowSkypeMenu(\''+call_msg+'\','+skype_showseed+',"'+callto+'",'+pcx+','+pcy+','+isMobile+',"'+name+'")',0);*/
}catch(e){ }
}
function DoShowSkypeMenu(call_msg, seed, callto, pcx, pcy, isMobile, name)
{
try{ //skype_tool.sd('DoShowSkypeMenu seed='+seed+' skype_showseed='+skype_showseed);
/* if(seed!=skype_showseed)
return;
skype_showseed=0;
skype_curid=callto;
skype_cur_name=name;
var menu=document.getElementById('skype_menu');
var my=pcy, mx=pcx;
var menubox=document.getBoxObjectFor(menu);
//var docelem = document.documentElement;
//alert(menubox.height);
//alert('doc h='+document.height + ' y='+my+' menu h='+menubox.height);
var docH=document.height;
if (docH < document.documentElement.clientHeight) docH=document.documentElement.clientHeight;
if (docH < document.documentElement.scrollHeight) docH=document.documentElement.scrollHeight;
if (docH < document.body.clientHeight) docH=document.body.clientHeight;
if (docH < document.body.scrollHeight) docH=document.body.scrollHeight;
if ((my + menubox.height) > docH)
my=my - 16 - menubox.height;
if (my < 0) my=0;
// if (document.height != 0 && (my + menubox.height) > document.height && (my + menubox.height) > document.documentElement.scrollHeight)//docelem.clientHeight)
//my=document.height - menubox.height;
var docW=document.width;
if (docW < document.documentElement.clientWidth) docW=document.documentElement.clientWidth;
if (docW < document.documentElement.scrollWidth) docW=document.documentElement.scrollWidth;
if (docW < document.body.clientWidth) docW=document.body.clientWidth;
if (docW < document.body.scrollWidth) docW=document.body.scrollWidth;
if ((mx + menubox.width) > docW)
mx=document.width - menubox.width;
if (mx < 0) mx=0;
// if (document.width != 0 && (mx + menubox.width) > document.width && (mx + menubox.width) > document.documentElement.scrollWidth)//docelem.clientWidth)
menu.style.left=mx+'px';
menu.style.top=my+'px';
skype_tool.doFixMenu(menu, isMobile, document);
menu.style.visibility="visible"; */
}catch(e){ }
}
function SetBgColor(obj, color)
{
try{
obj.lastChild.style.backgroundColor = color;
}catch(e){ }
}
//UTIL
function getBounds(element)
{
try{
var left = element.left;
var top = element.top;
while(!(element.tagName.toLowerCase() == 'span' && element.getAttribute('id') == '__skype_highlight_id'))
{
element=element.parentNode;
}
left = element.offsetLeft;
top = element.offsetTop;
for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
{
left += parent.offsetLeft;
top += parent.offsetTop;
if (parent.tagName.toLowerCase() == 'div')
{
left -= parent.scrollLeft;
top -= parent.scrollTop;
}
}
return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}catch(e){ }
}
function getDivScroll(element)
{
try{
var left = 0;
var top = 0;
while(!(element.tagName.toLowerCase() == 'span' && element.getAttribute('id') == '__skype_highlight_id'))
{
element=element.parentNode;
}
for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
{
if (parent.tagName.toLowerCase() == 'div')
{
left -= parent.scrollLeft;
top -= parent.scrollTop;
}
}
return {left: left, top: top};
}catch(e){ }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -