Javascript 兼容firefox的一些问题

比如:
1. document.all() 在FF里不行. 必须改成document.getElementById();
2. obj.innerText = "XXX"; 在FF里好像偶尔也有问题. 换成obj.innerHTML = "XXX";就行了.
3. var olE = document.body.onload; 获得body的onload函数. IE没问题.FF不行.改成window.onload.解决.
至于window.onload和body.onload有什么区别.. 还有待百度一下.
4. 在IE中.event对象有x,y属性. FF没有. event.x在FF里应该是event.pageX
解决办法. mX = event.x ? event.x : event.pageX; 然后用 mX 代替 event.x.
5. 最可恨的是Ajax在FF里不能同步调用!!!
比如 xmlHttp.open("get","xxx.aspx?id=xx",true); //true表示异步
在IE和FF里都没问题。 但是 xmlHttp.open("get","xxx.aspx?id=xx",false); 在IE没问题.在FF里就不行!!
这个问题还没找到解决办法.
6. 要吃饭了.未完待续..
-----------
第5个解决了.
同步调用的时候这样写.


代码如下:

xmlHttp.open("get","xxx.aspx?id=xx",false);

xmlhttp.send(null);

if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
// alert(xmlhttp.responseText);
} else {
alert("您所请求的页面有异常。");
}
}

(0)

相关推荐

  • javascript兼容firefox的文本输入长度提示

    function checkLen() {var obj=inputTxt var maxLen=parseInt(obj.getAttribute('maxlength')) //最大限制输入的字符数量 var len=obj.value.replace(/[^\x00-\xff]/g,'oo').length; var llen=maxLen-len; if(len>maxLen) { var i=0; for(var z=0;z255) { i=i+2; }else { i=i+1; }

  • Javascript 兼容firefox的一些问题

    比如: 1. document.all() 在FF里不行. 必须改成document.getElementById(); 2. obj.innerText = "XXX"; 在FF里好像偶尔也有问题. 换成obj.innerHTML = "XXX";就行了. 3. var olE = document.body.onload; 获得body的onload函数. IE没问题.FF不行.改成window.onload.解决. 至于window.onload和body.o

  • javascript下兼容firefox选取textarea文本的代码

    主要用到的js代码 复制代码 代码如下: function getSelectedText(){         var selectedText;         var textField=document.getElementById('inputTextarea');         if(window.getSelection) selectedText=getTextFieldSelection(textField);//getTextFieldSelection(document.

  • div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox

    div+css+javascript 实现无缝滚动,marquee无缝滚动,无缝滚动,兼容firefox 用marquee实现首尾相连循环滚动效果(仅IE): 复制代码 代码如下: <marquee behavior="scroll" contenteditable="true" onstart="this.firstChild.innerHTML+=this.firstChild.innerHTML;" scrollamount=&quo

  • 兼容Firefox和IE的onpropertychange事件oninput

    在文本框输入数据的时候,当键盘按下并放开的时候可以使用onkeyup来检测事件,onpropertychange能够捕获每次改变,而onchange需要执行某个事件才可以捕获.可是有的时候我们输入数据是采用粘贴的方式而不是键盘输入,这就需要实时检测文本框状态的改变.onpropertychange 不被firefox所支持,如果想在firefox下正常使用,需要用oninput属性,且需要用addEventListener来注册事件. //当状态改变的时候执行的函数 function handl

  • js Firefox 加入收藏夹功能代码 兼容Firefox 和 IE

    完整代码如下:chrome下也有提示,说实话一般这类代码一般都是IE下使用,其它浏览器也只是给个提示了. <script type="text/javascript"> //设为首页 www.jb51.net function SetHome(obj,url){ try{ obj.style.behavior='url(#default#homepage)'; obj.setHomePage(url); }catch(e){ if(window.netscape){ try

  • JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)

    IE中new Date(strDate)返回无效时间解决方式: 方法一: function getDateForStringDate(strDate){ //切割年月日与时分秒称为数组 var s = strDate.split(" "); var s1 = s[0].split("-"); var s2 = s[1].split(":"); if(s2.length==2){ s2.push("00"); } return

  • 兼容Firefox的Javascript XSLT 处理XML文件

    最近使用Firefox进行网页的调试,发现有些Javascript XSLT处理XML的语句仅仅支持IE浏览器.而网络中的一些介绍javascript XSLT 处理XML的文章基本上都是依据AJAX来做的. 无奈中,自己写了一个Javascript XSLT处理XML展现页面的小功能.现在帖出来和大家共享,希望大家给点改进意见.     在Firefox中使用XSLTProcessor对象处理XML,主要使用该对象的两个方法: 一.transformToFragment(). 二.transf

  • IE与FireFox的JavaScript兼容问题解决办法

    以下是 我在开发中遇到的情况: 1.动态删除table里的某一行. table:表示table对象. k:表示行号 table.rows[k].removeNode(true); //firefox执行失败,ie执行成功 IE与FireFox兼容写法 table.deleteRow(k); 2.为HTML标签自定义属性. inputElement:表示表单元素. propertyName:表示表单元素下的某个属性 inputElement.propertyName; //firefox执行失败,

  • Javascript(AJAX)解析XML的代码(兼容FIREFOX/IE)

    复制代码 代码如下: //导入js文件 function getResult(url, ready) { var xmlHttp; var r = function() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { //alert(isIE); var xmlstr; var xmldoc; var isIE = !!(window.attachEvent && !window.opera); if (isIE)

随机推荐