一、先看
jQuery(function(){
});
全写为
jQuery(document).ready(function(){
});
意义为在DOM加载完毕后执行了ready()方法。
二、再看
(function(){
})(jQuery);
其实际上是执行()(para)匿名方法,只不过是传递了jQuery对象。
三、总结
jQuery(function(){ });用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在。不可用于存放开发插件的代码,因为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数)。
(function(){ })(jQuery);用于存放开发插件的代码,执行其中代码时DOM不一定存在,所以直接自动执行DOM操作的代码请小心使用。
$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效。
如扩展$.fn.abc()
那么你可以这样子:$("#div").abc();
通常使用extend方法扩展,详细请看API.
$.fx是指jquery的特效。
如果使用显示、滑动、淡入淡出、动画等。
$.fx.off可以关闭动画,其实是直接显示结果。
如:
(function($) {
$.fn.jdValidate = function(option, callback, def) {
var ele = this;
var id = ele.attr("id");
var type = ele.attr("type");
var rel = ele.attr("rel");
var _onFocus = $("#" + id + validateSettings.onFocus.container);
var _succeed = $("#" + id + validateSettings.succeed.container);
var _isNull = $("#" + id + validateSettings.isNull.container);
var _error = $("#" + id + validateSettings.error.container);
if (def == true) {
var str = ele.val();
var tag = ele.attr("sta");
if (str == "" || str == "-1") {
validateSettings.isNull.run({
prompts: option,
element: ele,
isNullEle: _isNull,
succeedEle: _succeed
}, option.isNull);
} else if (tag == 1 || tag == 2) {
return;
} else {
callback({
prompts: option,
element: ele,
value: str,
errorEle: _error,
succeedEle: _succeed
});
}
} else {
if (typeof def == "string") {
ele.val(def);
}
if (type == "checkbox" || type == "radio") {
if (ele.attr("checked") == true) {
ele.attr("sta", validateSettings.succeed.state);
}
}
switch (type) {
case "text":
case "password":
ele.bind("focus", function() {
var str = ele.val();
if (str == def) {
ele.val("");
}
validateSettings.onFocus.run({
prompts: option,
element: ele,
value: str,
onFocusEle: _onFocus,
succeedEle: _succeed
}, option.onFocus);
})
.bind("blur", function() {
var str = ele.val();
if (str == "") {
ele.val(def);
}
if (validateRules.isNull(str)) {
validateSettings.isNull.run({
prompts: option,
element: ele,
value: str,
isNullEle: _isNull,
succeedEle: _succeed
}, "");
} else {
callback({
prompts: option,
element: ele,
value: str,
errorEle: _error,
isNullEle: _isNull,
succeedEle: _succeed
});
}
});
break;
default:
if (rel && rel == "select") {
ele.bind("change", function() {
var str = ele.val();
callback({
prompts: option,
element: ele,
value: str,
errorEle: _error,
isNullEle: _isNull,
succeedEle: _succeed
});
})
} else {
ele.bind("click", function() {
callback({
prompts: option,
element: ele,
errorEle: _error,
isNullEle: _isNull,
succeedEle: _succeed
});
})
}
break;
}
}
}
})(jQuery);
详细解决方案
jquery (function($){}) 跟 $(function(){})
热度:913 发布时间:2012-09-11 10:49:03.0
相关解决方案
- jquery 获取jsp页面的id解决方法
- jquery,二维数组取值。解决办法
- 求jquery.form.js+jquery.validate.min.js 用ajax提交表单的代码范例
- jquery 提交form表单不用插件的那种 如何提交
- jquery中$(document).ready(function()是jquery开始要写的一句话,javaWeb项目中,这句话什么时候开始实施呢
- jquery ajax回传没有值,该怎么处理
- jquery easyUI datagrid struts2有关问题
- 求解$.post(url,{},function(){});回调函数中怎么使用判断语句
- jquery form 有关问题
- springmvc jquery ajax 提交复杂对象,415异常解决办法
- 应用Struts2 与 jquery,ajax验证用户注册,不用从数据库获取数据
- jquery ajax select解决方法
- jquery ajax返回值的有关问题
- jquery 的bind里面能不能获得返回值呢? 对小弟我很难的有关问题啊
- java+jquery easy ui + json + struts分页例子
- jquery easyui分页效率有关问题
- jquery 如何获得动态添加后的子元素个数?
- 关于Struts2 jQuery Plugin的 Result,该如何处理
- (function(){//coding.})() 请教这是什么意思
- fatal error; call to a member function query() on a non-object异常求回答啊 php+sqlite
- Jquery 点击按钮实现图片翻页,该如何解决
- function 施行 *action
- Jquery+json解决思路
- jquery post有关问题
- 求大神解决偏题 - jquery ajax
- jquery ui taps有关问题,求解!
- jquery easyui 如何设置标题列居左,里面的数据列居右
- jquery 表格插件tablesorter的表头有多行和colspan不能排序有关问题
- jquery-easyui中的datetimebox 哪位高手用过?如何改变日期格式?
- jquery easyui treegrid 级联勾选跟点击行不自动勾选checkbox