解决jQuery插件tipswindown与hintbox冲突

使用情形如下:

页面a.aspx中点击按钮弹出模拟层,在这个层中有一个输入文本框“监督人”处调用hintbox来产生即时查询功能。

直接调用产生了如下情形:

于是找到jquery.hintbox-1.3.js这个文件,发现其中出现这么一行:

复制代码 代码如下:

$("#windown-content").ajaxStart(function(){
$(this).html("<img src='"+templateSrc+"/images/loading.gif' class='loading' />");
});

将其改为:
复制代码 代码如下:

$("#windown-content").html("<img src='"+templateSrc+"/images/loading.gif' class='loading' />");

原因是两个插件即使是在不同情形下触发ajax事件,使用的仍是同一对象,即jQuery.js中出现的
复制代码 代码如下:

ajaxSetup: function( settings ) {
jQuery.extend( jQuery.ajaxSettings, settings );
},

ajaxSettings: {
url: location.href,
global: true,
type: "GET",
contentType: "application/x-www-form-urlencoded",
processData: true,
async: true,
/*
timeout: 0,
data: null,
username: null,
password: null,
*/
// Create the request object; Microsoft failed to properly
// implement the XMLHttpRequest in IE7, so we use the ActiveXObject when it is available
// This function can be overriden by calling jQuery.ajaxSetup
xhr:function(){
return window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
},
accepts: {
xml: "application/xml, text/xml",
html: "text/html",
script: "text/javascript, application/javascript",
json: "application/json, text/javascript",
text: "text/plain",
_default: "*/*"
}
},

这样在当前窗体中就会是只有一个xhr对象存在,因为在hintbox中的ajax事件会触发tipswindown的ajaxStart事件。

可下载修改过后的tipswindown,点击下载

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome、FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本。下面的代码是我在所有windowsNT5.0及以上的系统上都测试通过的,给出代码: 一、使用JS获取客户端IP的几个方法 方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000)。 获取客户端IP代码: 复制代码 代码如下: HTML HEAD TITLEGetL

javascript event 事件解析 - 2015-05-01 14:05:29

event对象只在事件发生的过程中才有效。 event的某些属性只对特定的事件有意义。比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。 例子 下面的例子检查鼠标是否在链接上单击,并且,如果shift键被按下,就取消链接的跳转。 HTML HEADTITLECancels Links/TITLE SCRIPT LANGUAGE="JScript" function cancelLink() { if (window.event.sr
抄些常用工具方便查找 ----------字符串 Ext.util.Format.capitalize(string str);//将首字母变大写 Ext.util.Format.ellipsis(string value, Number length);//截取指定length字符,将自动在尾处添加省略号'...' Ext.util.Format.htmlEncode(string value); //将文本编码 lowercase(string value);//变小写 stripScripts(Mix

下拉框select的绑定示例 - 2015-05-01 14:05:29

根据文本绑定text var locationCity = productViewObj.Product.LocationCity; var countCity = $("#slCity option").length; for (var i = 0; i countCity; i++) { if ($("#slCity").get(0).options[i].text == locationCity) { $("#slCity").get(0).options[i].selected = true; b

Jquery异步请求数据实例代码 - 2015-05-01 14:05:29

一、Jquery向aspx页面请求数据 前台页面JS代码: 复制代码 代码如下: $("#Button1").bind("click", function () { $.ajax({ type: "post", url: "default.aspx", data: "name=" + $("#Text1").val(), success: function (result) { alert(result.msg); } }); }); 复制代码 代码如下: input id="Text1" type="te
我加了css的限制: 复制代码 代码如下: div img {}{ max-width:600px; width:600px; width:expression(document.body.clientWidth600?"600px":"auto"); overflow:hidden; } ◎ max-width:600px; 在IE7、FF等其他非IE浏览器下最大宽度为600px。但在IE6中无效。 ◎ width:600px; 在所有浏览器中图片的大小为600px; ◎ 当图片大小大于600px,自动缩
最近项目网页需要实时显示服务器时间,如果每秒通过ajax加载服务器时间的话,就会产生大量的请求。 于是设计了“javscript自运行时钟” 和 "ajax加载服务器时间" 相结合的形式来显示服务器时间。“javscript自运行时钟” 以某初始时间为起点自动运行,"ajax加载服务器时间" 每60s将服务器的时间给“javscript自运行时钟” 更新。 javscript自运行时钟: 复制代码 代码如下: /*! * File: sc_clock.js * Version: 1.0.0 * Author
弄了个很简单的例子判断IE浏览器版本是否过低 例子结构如下,其实一个页面加引入jquery就可以了,顺便弄了个标准结构(注意在IE6和IE7版本较低情况下下才看到它的提示效果) 复制代码 代码如下: !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http://www.w3.org/1999/x

jQuery filter函数使用方法 - 2015-05-01 14:05:07

利用filter函数可以从wrapper set中过滤符合条件的DOM元素。 如果我们有一个内容如下的html文件,要获取类为external的a元素,使用filter可以很easy地搞定。 复制代码 代码如下: a href=#>a href=#>a href=#>a href=#>a href=#>a href=#>a href=#>a href=#>a href=#>a href=#> filter的参数类型可分为两种: 1 传递选择器 2 传递过滤函数 如果使用选择器作为参数,用法如下 复制代码 代
JavaScript中的所有事物都是对象:字符串、数组、数值、函数等。JS中并没有类的概念, 但我们可以利用JS的语法特征,以类的思想来创建对象。 原始方法 复制代码 代码如下: script type="text/javascript" var obj = new Object(); obj.name = "Koji"; //为对象添加属性 obj.age = 21; obj.showName = function(){ //为对象添加方法 alert(this.name); } obj.showAge