很多很多的事都容易在不经意间忘却,所以我选择记录下来。
firefox 不支持 obj.innertext 属性。
obj.innertext alert()显示的值是 undefined。
firefox 支持 innerhtml 属性却不支持 innertext,如果不想用innerhtml 替代,可以用如下代码
由于firefox不支持document.all,所以考虑兼容的时候获取对象通常用 document.getelementbyid('yourid').
if (document.all) { //如果不是ie
//也可以用 if(navigator.appname.indexof(explorer) > -1) // obj.innertext = mytext;}else { obj.textcontent = yourtext; 用textcontent 替代
}
firefox、ie兼容的复制到剪贴板 javascript 代码
这个函数使用在firefox下时需要修改一个配置:
1.打开firefox ,在地址栏中输入: about:config
2.找到signed.applets.codebase_principal_support,将值设置为true
function copytoclipboard(txt) {
if(window.clipboarddata)
{
window.clipboarddata.cleardata();
window.clipboarddata.setdata(text, txt);
}
else if(navigator.useragent.indexof(opera) != -1)
{
window.location = txt;
}
else if (window.netscape)
{
try {
netscape.security.privilegemanager.enableprivilege(universalxpconnect);
}
catch (e)
{
alert(!!被浏览器拒绝!请在浏览器地址栏输入'about:config'并回车然后将'signed.applets.codebase_principal_support'设置为'true');
}
var clip = components.classes['@mozilla.org/widget/clipboard;1'].createinstance(components.interfaces.nsiclipboard);
if (!clip)
return;
var trans = components.classes['@mozilla.org/widget/transferable;1'].createinstance(components.interfaces.nsitransferable);
if (!trans)
return;
trans.adddataflavor('text/unicode');
var str = new object();
var len = new object();
var str = components.classes[@mozilla.org/supports-string;1].createinstance(components.interfaces.nsisupportsstring);
var copytext = txt;
str.data = copytext;
trans.settransferdata(text/unicode,str,copytext.length*2);
var clipid = components.interfaces.nsiclipboard;
if (!clip)
return false;
clip.setdata(trans,null,clipid.kglobalclipboard);
}
return true;
}
或者用下面这段代码,功能相同。
function copytoclipboard(meintext)
{
if (window.clipboarddata)
{
// the ie-manier
window.clipboarddata.setdata(text, meintext);
}
else if (window.netscape)
{
// dit is belangrijk maar staat nergens duidelijk vermeld:
// you have to sign the code to enable this, or see notes below
netscape.security.privilegemanager.enableprivilege('universalxpconnect');
// maak een interface naar het clipboard
var clip = components.classes['@mozilla.org/widget/clipboard;1']
.createinstance(components.interfaces.nsiclipboard);
if (!clip) return;
//alert(clip);
// maak een transferable
var trans = components.classes['@mozilla.org/widget/transferable;1']
.createinstance(components.interfaces.nsitransferable);
if (!trans) return;
// specificeer wat voor soort data we op willen halen; text in dit geval
trans.adddataflavor('text/unicode');
// om de data uit de transferable te halen hebben we 2 nieuwe objecten
// nodig om het in op te slaan
var str = new object();
var len = new object();
var str = components.classes[@mozilla.org/supports-string;1]
.createinstance(components.interfaces.nsisupportsstring);
var copytext=meintext;
str.data=copytext;
trans.settransferdata(text/unicode,str,copytext.length*2);
var clipid=components.interfaces.nsiclipboard;
if (!clip) return false;
clip.setdata(trans,null,clipid.kglobalclipboard);
}
else
{
return false;
}
alert(您已经复制: + meintext);
return false;
}
用javascript获取客户端电脑名
前几天学习php的时候想实现获取客户端电脑名,在asp及.net下都有实现的例子,但一直没找到办法php下实现的方法。后来在国外的论坛里找到了一些代码,是javascript的。但只能运行于ie环境,而且必须把安全级别设置得相当低才可以。
try
{
var ax = new activexobject(wscript.network);
document.write('user: ' + ax.username + '
');
document.write('computer: ' + ax.computername + '
');
}
catch (e)
{
document.write('访问当前电脑名操作被拒绝'+ '
');
}