在IE里有onmouseleave和onmouseenter, 而对于要兼容各大浏览器的Web开发人员来说还是一件头疼的事。 虽然网上已经有针对Mozilla Firefox的一些计策,但代码量也是不容乐观的。 想寻求比较好的解决方案,于是就翻遍了国内的大小网站,终一无所获,不得不硬着头皮去读国外网站,结果是理想的,因为W3C里有relatedTarget,于是就有了下边的解决方案: 代码如下:function isMouseLeaveOrEnter(e, handler) { if (e.type != mouseout &...
解决方案1: 调用windows 的shell,但会有安全问题. * browseFolder.js * 该文件定义了BrowseFolder()函数,它将提供一个文件夹选择对话框 * 以供用户实现对系统文件夹选择的功能 * 文件夹选择对话框起始目录由 * Shell.BrowseForFolder(WINDOW_HANDLE, Message, OPTIONS, strPath)函数 * 的strPath参数设置 * 例如:0x11--我的电脑 * 0 --桌面 * "c:\\"--系统C盘 * * 用如下代码把该函数应用到一个HTML文件中: * * 或把下面代码直...
解决方法, 一、Mozilla 提供了一个非公开的(undocumented)函数: 代码如下:// for Mozilla browsers if (document.addEventListener) { document.addEventListener("DOMContentLoaded", init, false); } 二、对于 IE 浏览器,可以使用IE特有的 defer 属性: 代码如下: alert("DOM 加载完毕!") 具有defer属性的脚本块会在DOM 加载完毕后执行。 非IE浏览器会忽略 defer 而直接执行 script 代码,因此,你可以有两种办法来屏蔽非...
接上篇,其它方法: 一、在IE中还可以在onreadystatechange事件里进行判断 http://www.thefutureoftheweb.com/blog/adddomloadevent 这里有Jesse Skinner写了一段独立的脚本函数来解决各种浏览器的onload问题,。 http://img.jb51.net/jslib/adddomloadevent.js 代码如下:/* * (c)2006 Jesse Skinner/Dean Edwards/Matthias Miller/John Resig * Special thanks to Dan Webbs domready.js Prototype extension * and Simon Williso...
但是,有一些细节并不为我们所熟知。John Resig 在分析了这些细节之后,为我们提供了一个完美的解决方案,本文将作详细介绍: 一、传统方法不为人所知的细节 毫无疑问,在判断函数类型时,我们使用的是typeof方法,比如: 代码如下:function fn(){ //content } alert(typeof fn)//结果是"function"。 但是,该方法在一些浏览器中并不是像我们想像的那样工作。 1、Firefox2和Firefox3 在这两个浏览器中,用typeof检测HTML对象元素的...
form中又许多元素,是用例如form.element[x] 来表示; 一个元素的类型: 一个元素的类型是用 element.type 来表示 有了上面的一些了解,现在就让我们来解决第一个非隐藏元素获得焦点的方案: 首先定义 一个对象 作为方法的应用者: var f=new Object(); 然后: 代码如下: f.getTheFirstFocus=function(){ if (document.forms.length > 0){ for (var i=0; i < document.forms[0].elements.length; i++) //遍历个元素 { var oField ...
在使用portotype,调用ajax方法时出现乱码,此时,获取页面中加入 可以试试;; Page.Response.Charset = "gb2312"; 如果不奏效,有人提供另外解决方案: 代码如下: request: function(url) { this.url = url; this.method = this.options.method; this.encoding = this.options.encoding; var params = this.options.parameters; if(this.encoding.toUpperCase()=="UTF-8"){ encode=encodeURIComponent; }else{ encode=escape; } 在...
CSS 多浏览器兼容性问题及解决方案一、document.formName.item(”itemName”) 问题 问题说明:IE下,可以使用 document.formName.item(”itemName”) 或 document.formName.elements ["elementName"];Firefox 下,只能使用document.formName.elements["elementName"]。 解决方法:统一使用document.formName.elements["elementName"]。 二、集合类对象问题 问题说明:IE下,可以使用 () 或 [] 获取集合类对象;Firefox下,只能使用...
今天弄了一天的Ajax中文乱码问题,Ajax的乱码问题分为两种: 1. JavaScript输出的中文乱码, 比如:alert("中文乱码测试"); 解决的办法比较简单,就是把jsp里所有的charset和pageEncoding的值都设置成相同的,一般是utf-8. 2. 这第二种就是Ajax从服务器端获得的数据出现乱码的问题。(我搜了n个小时试了n中方法才找到答案) 现在将我搜集的比较有效的方法都与大家分享:(我使用的开发环境是Eclipse,相信其他语言和开发环境都差不...
select-option onclick function simOptionClick4IE(){ var evt=window.event ; var selectObj=evt?evt.srcElement:null; // IE Only if (evt && selectObj && evt.offsetY && evt.button!=2 && (evt.offsetY > selectObj.offsetHeight || evt.offsetY aaaaa bbbbb ccccc [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]运行测试下即可。
先运行下程序看下: 123 输出:123 可以看到 span会自动根据包含的内容来变化宽度 这是因为:对于内联元素(可以是默认即为内联的比如 span 元素,也可以是 display: inline 的元素) width 和 height 只在 IE5.x 下和 IE6 或更新版本的 quirks 模式下触发 hasLayout 。而对于 IE6,如果浏览器运行于标准兼容模式下,内联元素会忽略 width 或 height 属性,所以设置 width 或 height 不能在此种情况下令该元素具有 layout。 zoom 总是可...
在触发js的scroll事件啊,可是我遇到的是真正不动的,我开始以为是FF上面才会这样,没想到IE6和IE7都有如此效果,不得不惊叹神奇了。如是我就找出了如下神奇的代码:仅用CSS实现滚动效果~~ #fixed{position:fixed;} 滚动 完了,就这个属性就搞定滚动了,真想骂人了。不过还没完呢,这个只支持火狐和IE7,我刚才说过IE6也可以的,只是IE6要实现就有点复杂了, 代码如下: * html #fixed{position:absolute;right:1px;top:expressi...
代码如下: 1 1.1 这就出现两次类别了,点父级显示(隐藏)子级菜单,JS代码也就一句话: 代码如下: function news_pro(o) { var obj=document.getElementById(o) obj.style.display==""? obj.style.display="none": obj.style.display=""; } 是不是有点太简单了,没错,就是这么简单,不过还没完,我们继续往下看;接着添加三级和四级子菜单: 代码如下: 1 1.1 1.1.1 1.1.1.1 1.1.1.2 1.1.2 ...
1.配置文件web.config中 在节中加上整个网站的编码方式。 这样参数就以gb2312的中文编码方式传输了。而一般默认是utf-8. 2.在传参是先编码在传输,接受时先编码,在接收。 string mm=Server.URLEncode(你); Response.Redirect(index.aspx?mm=+mm); 然后在接收页解码: string mm = Server.URLDecode(Requext.querystring(mm)); javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。...
原理:JSONP即JSON with Padding。由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源。如果要进行跨域请求,我们可以通过使用html的script标记来进行跨域请求,并在响应中返回要执行的script代码,其中可以直接使用JSON传递javascript对象。这种跨域的通讯方式称为JSONP。 个人理解: 就是在客户端动态注册一个函数function a(data),然后将函数名传到服务器,服务器返回一个a({/*json*/})到客户端运...