`
mj4d
  • 浏览: 302881 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

jQuery使用总结

阅读更多

记录在项目中用到的jQuery使用技巧(也许不叫做技巧),以备不时之需

 

1、页面初始化加载

这个从最早的在body标签中加入:onload="function()"。或直接在页面script中加入:

<script type="javascript">
window.onload=function(){
    //要初始化的东西
}
</script>

都可以实现,当然这里是使用了页面外部引入js文件。上面就会被覆盖掉,当然这样也不利于风格的统一,这样比较喜欢采用闭包的风格初始化。如在当前页面引入了外部文件:

<script type="text/javascript" src="$!assetModule.getTarget("/js/pages/login/index.js")"></script>

在index.js中:

$(function() {
	
    //初始化消息显示
    (window.initMsgAlert = function(){
    	var msg = $("#hmsg").val();
    	if(msg != ""){
    		//do something
    		errorPlace("", "username");
    	}
    })();
});

 

 

2、一个简单的错误消息显示框

这是借鉴jquery-validation中的错误消息显示,对我这样一个不懂css的来说还是值得一记。简单来说就是获取当前元素的长和宽,在对其相对位置处理后生成一个div显示消息:

	function errorPlace(error, element) {
		var l = $("#"+element).offset().left;
		var t = $("#"+element).offset().top;
		var eBox = $('<div class="msg msg-error"></div>');
		eBox.css({
			'position' : 'absolute',
			'top' : t + 2,
			'left' : l + 250
		});
		if (!error.length <= 0) {
			eBox.text(error);
			$("#"+element).after(eBox);
		} else {
			$("#"+element).parent().children().remove("div");
		}
	}

当然如果传入的error为空就清空该消息div。对其中的css:

.msg{
	height:18px;
	line-height:18px;
	padding: 2px 0 2px 25px;
	background-image:url(images/ico.png);
	background-repeat:no-repeat;
}

.msg.msg-error{
	border:1px solid #cc6666;
	background-color:#ffeaea;
	background-position:3px -51px;
}
 

 

3、拖动滚动条加载页面数据

就是页面显示数据时不采用分页条,在数据展示区域用上下的滚动条,如果到当前区域底部时去加载更多消息。

首先,得有滚动条的出现,在这个数据展现的容器上加入样式:

<div id="contentTable"  style="overflow-y:auto; overflow-x:hidden; height:300px;">
....
</div>

jQuery处理相应的事件,当然每次查询还是必须或得相应的页码、数据信息的

	var scrollHight = 0;
	var scrollTop = 0;
	var divHight = $("#contentTable").height();

	$("#contentTable").bind("scroll", function() {
		scrollHight = $(this)[0].scrollHeight;
		scrollTop = $(this)[0].scrollTop;

		if (parseInt(divHight) + parseInt(scrollTop) >= parseInt(scrollHight)) {
			var curPage = parseInt($("#currentPageId") .val());
			var totalPage = parseInt($("#totalPageId") .val());
			if (curPage < totalPage) {
				asynchLoadMoreData();
			}
		}
	});

以上就是一个简单的实现,当然能够封装成plugin,做到更通用就不错了,还有就是有个缺点如果页面加载的数据量过大如何处理也没考虑

 

 

4、jQuery使用备忘

都是些常见的,但是不用的时候也会忘记,懒得翻API了

a、绑定多个事件

$("#deleteBtn").bind({
	click : function() {
		// dosomething
	},
	mousemove : function() {
		// dosomething
	}
});

b、获取下拉框的name

//获取某个id的下拉框的name
$("#proviceId").find("option:selected").text()
//在下拉框change事件中获取name并设置到otherId的区域显示
$("#otherId").val(($(this).find("option:selected").text()));

c、清空某一区域下的值

$("#areaId input[type='text']").attr("value", "");
 

 

 

5、表格相关

表格下的checkbox根据head中的选择改变

    $("#checkBoxAll").bind("click", function(){
    	$("#tbodyId input[type='checkbox']").attr("checked", $(this).attr("checked"));
    });

表格删除、内容、长度判断

$("#deleteBtn").bind("clcik", function() {

	// 删除的个数
	var dellength = 0;
	// 表格下总的行数,如果dellength = index表示全部删除
	var index = 0;
	// 删除行的记录,一般为数据的id
	var selectedIds = [];
	$("#tbodyId input[type='checkbox']").each(function(i, n) {
		index++;
		if ($(this).attr("checked")) {
			dellength++;
			selectedIds.push($(this).attr("value"));
		}
	});

	// do something

});

表格在删除后重新排序

// 表单数据重新排序:第一列为序号
$("#tbodyId tr td:nth-child(1)").each(function(i, n) {
	if ($(this).text() != "") {
		$(this).text(i + 1);
	}
});

其中可以用td:nth-child(n)获取第n列数据,n从1开始

接下来是与上面的情况不一样的,在选中表格的某一行后,再获取该行的某列数据:

// 校验选中的记录是否与目标月份一致
function valiSameMonth() {
	var targetMonth = $("#settleApplySubmitMonthId").val();
	var valiIndex = 0;
	$("#settleApplyQueryTbodyId > tr").each(function(index) {
		if ($(this).find("td:eq(0)>input:checkbox").is(":checked") == true) {
			var tempTime = $.trim($(this).find("td:eq(4)").text());
			if (tempTime == "" || tempTime.length < 7) {
				valiIndex++;
			}
			var tmepMonthTime = tempTime.substring(0, 7);
			if (targetMonth == "") {
				$("#settleApplySubmitMonthId").val(tmepMonthTime);
				targetMonth = tmepMonthTime;
			} else {
				if (targetMonth != tmepMonthTime) {
					valiIndex++;
				}
			}
		}
	});
	return valiIndex > 0;
}
 

 

to be continuedto be continuedto be continuedto be continuedto be continuedto be continuedto be continued

分享到:
评论

相关推荐

    jquery技巧总结

    **jQuery技巧总结** jQuery是一款广泛应用于前端开发的JavaScript库,它极大地简化了DOM操作、事件处理、动画制作以及Ajax交互。本篇文章将深入探讨jQuery的核心技巧,帮助开发者更高效地利用这一强大的工具。 ###...

    jquery总结学习资料JQuery总结,jquery总结学习资料JQuery总结,jquery总结学习资料JQuery总结

    jQuery 是一个广泛使用的JavaScript库,由John Resig于2006年创建,它极大地简化了JavaScript编程,尤其是处理DOM操作、事件处理、动画效果和Ajax交互。jQuery 的设计目标是“write less, do more”,它通过提供简洁...

    jquery总结学习资料JQuery总结

    **jQuery 总结** 在实际开发中,jQuery 可以极大地提高工作效率,减少代码量,使得动态交互和界面美化变得更加简单。然而,随着 ES6 和现代前端框架的崛起,如 React 和 Vue,jQuery 在某些场景下可能不再是首选。...

    jquery使用技巧总结

    《jQuery使用技巧深度解析》 在Web开发领域,jQuery是一个广泛应用的JavaScript库,它极大地简化了DOM操作、事件处理、动画制作以及Ajax交互等任务。本文将深入探讨jQuery的使用技巧,帮助开发者提升效率,更好地...

    JQuery学习总结及实例中文WORD版

    资源名称:JQuery 学习总结及实例 中文WORD版内容简介:普通Javascript的缺点:每种控件的操作方式不统一,不同浏览器下有区别,要编写跨浏览器的程序非常麻烦。因此出现了很多对Javascript 的封装库,...

    jquery技巧总结(转)

    **jQuery 技巧总结** jQuery 是一款非常流行的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画制作和Ajax交互等任务。自2006年发布以来,jQuery 已经成为 web 开发不可或缺的一部分。这篇总结将探讨一些...

    JQuery个人总结(很全面)

    目录: 1.选择网页元素 2.改变结果集 3.链式操作 4.元素的操作:取值和赋值 5.元素的操作:移动 6.元素的操作:复制、删除和创建 7.工具方法 8.事件操作 9.特殊效果

    jquery 学习笔记总结

    **jQuery 学习笔记总结** jQuery 是一个广泛使用的 JavaScript 库,它简化了网页文档对象模型(DOM)操作、事件处理、动画制作以及Ajax交互。本篇笔记将深入探讨 jQuery 的核心概念,包括选择器、常用方法以及在...

    jQuery 技巧总结

    jQuery 技巧总结,是经验的系统总结,对新手很有帮助,如果你是老手就不要下了,句句实话。jQuery 技巧总结,是经验的系统总结,对新手很有帮助,如果你是老手就不要下了,句句实话。jQuery 技巧总结,是经验的系统总结...

    jQuery日常使用总结

    本文将对jQuery的日常使用进行总结,包括如何引入jQuery库、页面加载事件、事件处理、DOM操作、表单元素的检查与交互,以及提示信息的展示。 1. **引入jQuery库**: 要使用jQuery,首先需要在HTML文件中引入jQuery...

    jquery 归纳总结以及文档介绍

    2. **遍历元素**: 使用 `.each()` 函数可以遍历jQuery对象中的每个元素,例如: ```javascript $("div").each(function(index, element) { console.log("这是第" + index + "个div元素:" + $(element).text()); ...

    Jquery全集 Jquery总结

    jQuery 是一个广泛使用的 JavaScript 库,它极大地简化了 JavaScript 的 DOM 操作、事件处理、动画制作以及 AJAX 交互。本资料旨在全面覆盖 jQuery 的核心概念和实用技巧,通过实例教学,帮助开发者快速上手并熟练...

    jquery经验总结

    《jQuery经验总结——深入浅出JavaScript库的精髓》 jQuery,作为一款强大的JavaScript库,自2006年诞生以来,便以其简洁易用的API和高效的操作DOM能力深受开发者喜爱。本文将从核心概念、选择器、DOM操作、事件...

    jQuery选择器总结

    jQuery选择器总结,网上下载的,非原创的,仅供参考,学习学习。

Global site tag (gtag.js) - Google Analytics