Javascript 使用internet explorer时,单击菜单下一步失败

Javascript 使用internet explorer时,单击菜单下一步失败,javascript,windows,internet-explorer,add-on,regedit,Javascript,Windows,Internet Explorer,Add On,Regedit,我正在尝试使用我们编写的javascript获取任何网站的url和标题。我在a.HTM中创建了javascript,并从MenuText中的regedit中获取它。如文件://C:\Users\lala\script.htm 这是剧本 <script type="text/javascript" defer> javascript:{var jolExt={url:"http://example.com/script_container.php?id=&note=",sub

我正在尝试使用我们编写的javascript获取任何网站的url和标题。我在a.HTM中创建了javascript,并从MenuText中的regedit中获取它。如文件://C:\Users\lala\script.htm

这是剧本

<script type="text/javascript" defer>

javascript:{var jolExt={url:"http://example.com/script_container.php?id=&note=",submit:function(a){var b=jolExt.base64.encode(jolExt.strip(document.getElementsByTagName("title")[0].innerHTML));var d=jolExt.base64.encode(jolExt.strip(location.href));
window.open(jolExt.url+d+"&note="+b,"","width=380,height=335")},submitToOtherJol:function(){jolExt.submit(true)},submitToJol:function(){jolExt.submit(false)},strip:function(a){return a.replace(/ {2,}/g," ").replace(/^ +/g,"").replace(/ +$/g,"")},base64:{_0:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode:function(a){var b="";var d,c,h,j,i,f,g;var e=0;a=jolExt.base64._1(a);while(e<a.length){d=a.charCodeAt(e++);c=a.charCodeAt(e++);h=a.charCodeAt(e++);j=d>>2;i=((d&3)<<4)|(c>>4);f=((c&15)<<2)|(h>>6);g=h&63;if(isNaN(c)){f=g=64}else if(isNaN(h)){g=64}b=b+this._0.charAt(j)+this._0.charAt(i)+this._0.charAt(f)+this._0.charAt(g)}return b},decode:function(a){var b="";var d,c,h;var j,i,f,g;var e=0;a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(e<a.length){j=this._0.indexOf(a.charAt(e++));i=this._0.indexOf(a.charAt(e++));f=this._0.indexOf(a.charAt(e++));g=this._0.indexOf(a.charAt(e++));d=(j<<2)|(i>>4);c=((i&15)<<4)|(f>>2);h=((f&3)<<6)|g;b=b+String.fromCharCode(d);if(f!=64){b=b+String.fromCharCode(c)}if(g!=64){b=b+String.fromCharCode(h)}}b=jolExt.base64._2(b);return b},_1:function(a){a=a.replace(/\r\n/g,"\n");var b="";for(var d=0;d<a.length;d++){var c=a.charCodeAt(d);if(c<128){b+=String.fromCharCode(c)}else if((c>127)&&(c<2048)){b+=String.fromCharCode((c>>6)|192);b+=String.fromCharCode((c&63)|128)}else{b+=String.fromCharCode((c>>12)|224);
b+=String.fromCharCode(((c>>6)&63)|128);b+=String.fromCharCode((c&63)|128)}}return b},_2:function(a){var b="";var d=0;var c=c1=c2=0;while(d<a.length){c=a.charCodeAt(d);if(c<128){b+=String.fromCharCode(c);d++}else if((c>191)&&(c<224)){c2=a.charCodeAt(d+1);b+=String.fromCharCode(((c&31)<<6)|(c2&63));d+=2}else{c2=a.charCodeAt(d+1);c3=a.charCodeAt(d+2);b+=String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));d+=3}}return b}}};jolExt.submitToJol();}

javascript:{var jolExt={url:]http://example.com/script_container.php?id=¬e=,提交:函数(a){var b=jolExt.base64.encode(jolExt.strip(document.getElementsByTagName(“title”)[0].innerHTML));var d=jolExt.base64.encode(jolExt.strip(location.href));

window.open(jolExt.url+d+“¬e=“+b,”,“width=380,height=335”)},submitToOtherJol:function(){jolExt.submit(true)},submitToJol:function(){jolExt.submit(false)},strip:function(a){返回a.replace(/{2,}/g,“”).replace(/^+//g,”).replace(/+$/g,”)}),base64:{0:{abcdefghijjklmnopqrstuxyzabefjjjjkvwjjjjjjjjjjjjjkvwjjjjjjjjjjjjjkvwkvwjjjj“var b=”{var b=”var d,c,h,h,j,j,j,i,i,c,c,c,c,h,j,j,i,i,c,c,c,c,c,c,h,j,j,j,i,j,i,i,i,i,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,g,e=0;a=a。替换(/[^a-Za-z0-9\+\/\=]/g,”);而(e>6)和63)|128);b+=String.fromCharCode((c&63)| 128)}return b},_2:function(a){var b=“”;var d=0;var c=c1=c2=0;而(d问题是脚本中的
document
实例是MenuExt脚本的文档。您需要的是调用脚本的
document

使用“<代码>外部.MeNutTaleObjor”。它包含被调用方的<代码>窗口< /代码>。请考虑这个简单的MunuEXT脚本

<script type="text/javascript">
  // Get callee's 'window' object
  var win = external.menuArguments;

  // Get the callee's 'document' object.
  var doc = win.document;

  // Get the callee's object which invoked this
  // (aka: what you right-clicked on)
  var src = win.event.srcElement;

  // Spit back page title and URL
  alert('Viewing ' + doc.title + ' at ' + win.location + 
        '. You clicked on ' + src + '.');
</script>

//获取被调用方的“窗口”对象
var win=外部菜单项;
//获取被调用方的“文档”对象。
var doc=win.doc;
//获取调用此函数的被调用方的对象
//(又名:右键单击的内容)
var src=win.event.src元素;
//吐回页面标题和URL
警报('查看'+doc.title+'在'+win.location+
“。您单击了“+src+”);
要右键单击该项,请使用
external.menuArguments.event.srceelement
,如上所示