本文实例讲述了jQuery点击其他地方时菜单消失的实现方法。分享给大家供大家参考,具体如下:function stopPropagation(e) {if (e.stopPropagation) e.stopPropagation();//停止冒泡 非ieelse e.cancelBubble = true;//停止冒泡 ie}$(document).bind('click',function(){$('#test').css('display','none');});$('#test').bind('click',function(e){//写要执行的内容....吥啦不啦stopPropagation(e);//调用停止冒泡方法,阻止documen...
本文讨论网页自动跳转的几种实现方法。方法一:使用meta标签meta标签是html不可或缺的标签之一,它负责提供文档的元信息,其参数主要有: ① http-equiv: 与 文档中数据相关的HTTP文件首部 ② content: 与命名HTTP首部相关的数据 ③ name: 文档描述 ④ url: 与元信息相联系的URL当我们定义属性http-equiv为refresh,打开此Web页时系统将根据content规定的值在一定时间内跳转到相应页面,content="秒数;url=网址"就是定义了过多...
这篇文章来回答javascript通用循环遍历方法forEach中最后提到的关于伪数组的问题。 什么是伪数组 能通过Array.prototype.slice转换为真正的数组的带有length属性的对象。 这种对象有很多,比较特别的是arguments对象,还有像调用getElementsByTagName,document.childNodes之类的,它们都返回NodeList对象都属于伪数组。 我们可以通过Array.prototype.slice.call(fakeArray)将伪数组转变为真正的Array对象。 来看个示例: 代码如下...
Ajax的跨域操作一直是一个难题,现目前主要的解决方法主要有: 1、JSONP(需要在服务器端支持) 2、IFrame(仅能在子域间操作) 3、页面代理(这个有点万能) 4、Access-Control-Allow-Origin(新版浏览器支持,需要在服务器端设置Header) 今天,小子再提供一种使用Flash进行跨域操作的方法。众所周之,其实Flash的跨域操作也是有限制的,不过,Flash的跨域配置比简单,只需要在站点根目录下...
代码: 代码如下: //页面代码 (简化) CssClass="ui-button-icons-only" Text="按钮"> Edit View Build //页面初始化的时候 var staticsignal; $(function() { // a workaround for a flaw in the demo system (http://dev.jqueryui.com/ticket/4375), ignore! $(":input.ui-button-icons-only").button(); //更改textbox的样式 }); function buttonclick(e) { var offset=e.offset();//得到offset var x=offset.l...
1。延迟切换tab 需求:页面上有几个tab,切换tab的时候,会对某个特定区域的数据进行拉取更新。 弊端:用户从第一个tab切换一直快速切到尾,就会产生n个ajax请求。其实用户只是需要看到最后一个tab的数据。 代码如下: var changeTab = function(){ var timeId = 0; return function(tabId){ if(timeId){ clearTimeout(timeId); timeId=0; } setTimeout(function(){ //ajax do something },500); }; }(); 一个比较简单的例子,绑定...
1,使用js文件使IE支持png图片透明效果。 pngfix.js: 代码如下: var arVersion = navigator.appVersion.split("MSIE") var version = parseFloat(arVersion[1]) function fixPNG(myImage) { if ((version >= 5.5) && (version < 7) && (document.body.filters)) { var imgID = (myImage.id) ? "id=" + myImage.id + " " : "" var imgClass = (myImage.className) ? "class=" + myImage.className + " " : "" var imgTitle = (myI...
在SharePoint2010里有了很好的解决方案(详见拙文SharePoint客户端编程系列http://www.gxlcms.com/article/27198.htm),但是在SharePoint2007里就没那么好用,具体问题具体分析,本文要解决的是如何在JavaScript里通过WebService访问SharePoint数据的问题。 首先需要从此处(http://darrenjohnstone.net/download/12)下载JavaScript API包 引用次JS,里面有两个库,一个包是处理核心库SPAPIcore.js,另一个包提供了大多供调用的...
这里把符合以下条件的对象称为伪数组 1,具有length属性 2,按索引方式存储数据 3,不具有数组的push,pop等方法 如 1,function内的arguments 。 2,通过document.forms,Form.elements,Select.options,document.getElementsByName() ,document.getElementsByTagName() ,childNodes/children 等方式获取的集合(HTMLCollection,NodeList)等。 3,特殊写法的对象 ,如 代码如下: var obj={}; obj[0] = "一"; obj[1] = "二"; ...
代码如下: $(tr).hover(function(event) { $(this)[ (event.type == mouseenter ? add : remove) + Class ](test); //test是样式 }); $(tr).hover(function(event) { $(this).toggleClass(test); //test是样式 }); $(tr).hover(function(){ $(this).addClass(test); //test是样式 },function(){ $(this).removeClass(test); //test是样式 }); 注:一般情况下使用第二种方法是可以的,但是遇到表格行可以拖拽的情况,那么就会出现BU...
代码如下: 题目:要求写一个函数,去掉给定数组中的重复值。 如: 传入数组 a = [0, 8, 5, 4, 78, 8, 90, 4, a, b, a]; 要求返回:[0,4,5,8,78,90,a,b] 对于这个题目,在面试之后也想了好多次,不过一直没能想出一个时间复杂度较低的方法。昨天下午在宿舍看《JavaScript语言精粹》看到一个书中的一段代码有所触发,于是在jsfiddle上测试了,成功。代码如下(完整版参见jsfiddle) 代码如下: var getNR = function(src) { src = src...
引言 有一个通讯录系统, 同时部署在几台服务器上, 但是主页上有个通讯录的链接, 链接到这个系统. 问题是, 有时候链接指向的服务器出故障, 于是希望在这个服务器出故障(服务不可用)的情况下, 能指向其他服务器的链接. 解决方案一: XMLHTTP方案 以下代码摘自[2]中meizz的回帖: 代码如下: function getURL(url) { var xmlhttp = new ActiveXObject( "Microsoft.XMLHTTP"); xmlhttp.open("GET", url, false); xmlhttp.send(); if(xml...
Firefox/Chrome/Opera从某一版本开始已经支持这一特性,但ie系列即使是ie9也还不支持,所以需要通过javascript来兼容这些不支持placeholder特性的浏览器。 普遍的做法 现在普遍使用的做法是通过表单元素的onfocus/onblur事件来改变value值,如下: 代码如下: var el = document.getElementById("text1"); if (el.value == "") el.value = "提示信息"; el.onfocus = function() { if (this.value == "提示信息") this.value = ""...
需求 把含有rowspan、colspan的table还原。 例如原table为: 还原后的table为: 代码原理 对table进行遍历,如果td的rowspan属性值大于1,则给当前的td的父元素的兄弟元素添加td,如果td的colspan属性值大于1,则在当前的td元素后添加td 代码如下: //本文首发博客园:http://artwl.cnblogs.com(2012/02/08)jQuery.fn.RevertTable=function(){ $("tr",this).each(function(trindex,tritem){ $(tritem).find("td").each(...
JQuery UI提供的API极大简化了拖拽功能的开发。只需要分别在拖拽源(source)和目标(target)上调用draggable和droppable两个函数即可。 拖拽原理 首先要明确几个概念。 ource:拖拽源,要拖动的元素。 taerget:拖放目标,能够放入source的容器。 拖拽的动作分解如下: 1. drag start:在拖拽源(source)上按下鼠标并开始移动 2. drag move: 移动过程中 3. drag enter: 移动进入目标(target)容器 4. drag lea...