jquery笔记-api

//jQuery1.10笔记


//核心
// jQuery([selector,[context]])
$("div", xml.responseXML);
$("input:radio", document.forms[0]);

//返回值:jQuery 	jQuery(html,[ownerDocument])
$("<input>", {
	type: "text",
	val: "Test",
	focusin: function() {
		$(this).addClass('active');
	},
	focusout: function() {
		$(this).toggleClass('type');
	}
}).appendTo('form');

// jQuery(callback)
$(function() {
	// body...
});

//返回值:Boolean	jQuery.holdReady(hold) 
$.holdReady(true);
$.getScript("myplugin.js", function() {
	$.holdReady(false);
});

// 返回值:jQuery 	each(callback)
$('img').each(function(i) {
	this.src = "test" + i + ".jpg"
});

//返回值:Number		size()
$('img').size();

//返回值:Number		length
$('img').length();

//返回值:Striing	selector
$('ul').append('<li>' + $('ul').selector + '<li>');

// 返回值:Element	context
$('ul', document.body).context.nodeName;

// 返回值:Element	get([index])
$('img').get().reverse();

//返回值:Number		index([selector|element])
$('li').index($('li:gt(0)'));

// 返回值:jQuery 	data([key],[value])
//能在一个元素上存放任何格式的数据,而不仅仅是字符串。
$('div').data('blah', {
	first: 16,
	last: 'pizza'
});

// 返回值:jQuery 	removeData([name|list])
$('div').removeData('blah');

//返回值:Array/jQuery 	queue(element,[queueName,[callback]])
//返回值:jQuery 		dequeue([queueName])
// 返回值:jQuery 		clearQueue([queueName])

//返回值:jQuery 	jQuery.fn.extend(object)
jQuery.fn.$.extend({
	check: function() {
		return this.each(function() {
			this.checked = true;
		});
	}
});
$('input[type=checkbox]').check();

//返回值:jQuery 	jQuery.extend(object)
jQuery.extend({
	min: function(a, b) {
		return a < b ? a : b;
	},
	max: function(a, b) {
		return a > b ? a : b;
	}
});

//返回值:jQuery 	jQuery.noConflict([extreme])
//运行这个函数将变量$的控制权让渡给第一个实现它的那个库。

// 选择器
// 返回值:Array<Element>	#id
$('#myDiv');
// 返回值:Array<Element(s)>	element
$('div');
// 返回值:Array<Element(s)>	.class
$(".myClass");
// 返回值:Array<Element(s)>	*
$("*");
// 返回值:Array<Element(s)>	selector1,selector2,selectorN
$("div,span,p.myClass");
// 返回值:Array<Element(s)>	ancestor descendant
$("form input");
// 返回值:Array<Element(s)>	parent > child
$("form > input");
// 返回值:Array<Element(s)>	prev + next
$("label + input");
// 返回值:Array<Element(s)>	prev ~ siblings
$("label ~ input");
// 返回值:jQuery 			:first
$("li:first");
// 返回值:Array<Element(s)>	:not(selector)
$("input:not(:checked)");
// 返回值:Array<Element(s)>	:even
$("tr:even");
// 返回值:Array<Element(s)>	:odd
$("tr:odd");
// 返回值:Array<Element>	:eq(index)
$("tr:eq(1)");
// 返回值:Array<Element(s)>	:gt(index)
$("tr:gt(0)");
// 返回值:jQuery 			:lang(language)
$("p:lang(it)");
// 返回值:jQuery 			:last()
$('li:last');
// 返回值:Array<Element(s)>	:lt(index)
$("tr:lt(2)");
// 返回值:Array<Element(s)>	:header
$(":header").css("background", "#EEE");
// 返回值:Array<Element(s)>	:animated
$("div:not(:animate)").animate({
	left: "+=20"
}, 1000);
// 返回值:jQuery 			:focus
$("a").focus();
// 返回值:jQuery 			:root
$(":root").css("background-color", "yellow");
// 返回值:jQuery 			:target
// 返回值:Array<Element(s)>	:contains(text)
$("div:contains('Jhon')");
// 返回值:Array<Element(s)>	:empty
$("td:empty");
// 返回值:Array<Element(s)>	:has(selector)
$("div:has(p)").addClass("test");
// 返回值:Array<Element(s)>	:parent
$("td:parent");
// 返回值:Array<Element(s)>	:hidden
$("tr:hidden");
// 返回值:Array<Element(s)>	:visible
$("tr:visible");
// 返回值:Array<Element(s)>	[attribute]
// 返回值:Array<Element(s)>	[attribute!=value]
// 返回值:Array<Element(s)>	[attribute=value]
$("input[name='newsletter']").attr("checked", true);
// 返回值:Array<Element(s)>	[attribute^=value]
$("input[name^='news']");
// 返回值:Array<Element(s)>	[attribute$=value]
$("input[name$='er']");
// 返回值:Array<Element(s)>	[attribute*=value]
$("input[name*='man']");
// 返回值:Array<Element(s)>	[selector1][selector2][selectorN]
$("input[id][name$='man']");
// 返回值:Array<Element(s)>	:first-child
$("ul li:first-child");
// 返回值:jQuery 			:first-of-type
$("div:fist-of-type");
// 返回值:Array<Element(s)>	:last-child
$("ul li:last-child");
// 返回值:jQuery 			:last-of-type
$("p:last-of-type");
// 返回值:jQuery 			:nth-last-child(n|even|odd|formula)
// 返回值:Array<Element(s)>	:nth-child
// ':eq(index)' 只匹配一个元素,而这个将为每一个父元素匹配子元素。
// :nth-child从1开始的,而:eq()是从0算起的!
$("ul li:nth-child(2n)");
// 返回值:jQuery 			:nth-last-of-type
// 返回值:jQuery 			:nth-of-type(n|even|odd|formula)
// 返回值:Array<Element(s)>	:only-child
$("ul li:only-child");
//返回值:Array<Element(s)> 	:only-of-type
$("button:only-of-type").text("Alone").css("border", "2px blue solid");
// 返回值:Array<Element(s)>	:input
// 匹配所有 input, textarea, select 和 button 元素
$(":input");
// 返回值:Array<Element(s)>	:text
$(":text");
// 返回值:Array<Element(s)>	:password
$(":password")
	// 返回值:Array<Element(s)>	:radio
	// 返回值:Array<Element(s)>	:checkbox
	// 返回值:Array<Element(s)>	:submit
	// 返回值:Array<Element(s)>	:image
	// 返回值:Array<Element(s)>	:reset
	// 返回值:Array<Element(s)>	:button
	// 返回值:Array<Element(s)>	:file
	// 返回值:Array<Element(s)>	:checked
	// 返回值:Array<Element(s)>	:selected
	// 返回值:Array<Element(s)>	:disabled
	// 返回值:Array<Element(s)>	:enabled
$("input:enabled");
// 返回值:Array<Element(s)>	:has(selector)



//文档处理
// 返回值:jQuery 	append(content|fn)
// 返回值:jQuery 	appendTo(content)
// 返回值:jQuery 	prepend(content)
// 返回值:jQuery 	prependTo(content)
// 返回值:jQuery 	after(content|fn)
// 返回值:jQuery 	before(content|fn)
// 返回值:jQuery 	insertAfter(content)
// 返回值:jQuery 	insertBefore(content)
// 返回值:jQuery 	wrapAll(html|ele)
// 将所有包裹起来
// 返回值:jQuery 	wrap(html|element|fn)
// 将每一个包裹起来
// 当HTML标记代码中的元素包含文本时无法使用这个函数。因此,如果要添加文本应该在包裹完成之后再行添加
$('.inner').wrap(function() {
	return '<div class="' + $(this).text() + '"/>';
});
// 返回值:jQuery 	unwrap()
// 返回值:jQuery 	wrapInner(htm|element|fnl)
// 返回值:jQuery 	replaceWith(content|fn)
// 是移动到目标位置来替换,而不是复制一份来替换
// 返回值:jQuery 	replaceAll(selector)
// 返回值:jQuery 	empty()
// 返回值:jQuery 	remove([expr])
// 返回值:jQuery 	detach([expr])
// 与remove()不同的是,所有绑定的事件、附加的数据等都会保留下来。
$("p").detach(".hello");
// 返回值:jQuery 	clone([Even[,deepEven]])



// 事件
// 返回值:jQuery 	ready(fn)
// 返回值:jQuery 	on(events,[selector],[data],fn)
$('p').on("click", function() {
	alert($(this).text());
});
// 返回值:jQuery 	off(events,[selector],[fn])
$('p').off();
$('p').off("click");
// 返回值:jQuery 	bind(type,[data],fn)
// .bind()函数只能针对已经存在的元素进行事件的设置;但是live(),on(),delegate()均支持未来新添加元素的事件设置
$("button").bind({
	click: function() {
		$("p").slideToggle();
	},
	mouseover: function() {
		$("body").css("background-color", "red");
	},
	mouseout: function() {
		$("body").css('background-color', '#FFF');
	}
});
// 返回值:jQuery 	one(type,[data],fn)
$("p").one("click", function() {
	alert($(this).text());
});
// 返回值:jQuery 	trigger(type,[data])
$("p").click(function(event, a, b) {
	//一个普通的点击事件时,a和b是undefined类型
	//如果用下面的语句触发,a指向"foo",而b指向"bar"
}).trigger('click', ["foo", "bar"]);
$("p").bind('myEvent', function(event, message1, message2) {
	alert(message1 + ' ' + message2);
});
$("p").trigger("myEvent", ["Hello", "World"]);
// 返回值:jQuery 	triggerHandler(type, [data])
// 与trigger类似,但有以下三个主要区别: 
// 第一,他不会触发浏览器默认事件。
// 第二,只触发jQuery对象集合中第一个元素的事件处理函数。
// 第三,这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回 undefined 。
$("#new").click(function() {
	$("input").triggerHandler('focus');
});
// 返回值:jQuery 	unbind(type,[data|fn])
// 返回值:jQuery 	live(type, [data], fn)
// jQuery 给所有匹配的元素附加一个事件处理函数,(与bind()的区别)即使这个元素是以后再添加进来的也有效。
//事件委托!!
// 返回值:jQuery 	die(type, [fn])
// 返回值:jQuery 	delegate(selector,[type],[data],fn)
$("div").delegate("button", "click", function() {
	$("p").slideToggle();
});
// 返回值:jQuery 	undelegate([selector,[type],fn])
// 返回值:jQuery 	hover([over,]out)
// hover()方法通过绑定变量"handlerInOut"来切换方法。
$("td").bind("mouseenter mouseout", handlerInOut);
$("td").hover(handlerInOut);

$("td").hover(function() {
	$(this).addClass("hover");
}, function() {
	$(this).removeClass("hover");
});
// 返回值:jQuery 	toggle([speed],[easing],[fn])
$("p").toggle("slow");
// 返回值:jQuery 	blur([[data],fn])
// 返回值:jQuery 	change([[data],fn])
// 该事件仅适用于文本域(text field),以及 textarea 和 select 元素。当用于 select 元素时,change 事件会在选择某个选项时发生。当用于 text field 或 text area 时,该事件会在元素失去焦点时发生。
// 返回值:jQuery 	click([[data],fn])
// 返回值:jQuery 	dblclick([[data],fn])
// 如果把 dblclick和 click 事件应用于同一元素,可能会产生问题
// 返回值:jQuery 	error([[data],fn])
// 返回值:jQuery 	focus([[data],fn])
$("#login").focus();
// 返回值:jQuery 	focusin([data],fn)
// focusin事件跟focus事件区别在于,他可以在父元素上检测子元素获取焦点的情况。
// 返回值:jQuery 	focusout([data],fn)
// focusout事件跟blur事件区别在于,他可以在父元素上检测子元素失去焦点的情况。
// 返回值:jQuery 	keydown([[data],fn])
$(window).keydown(function(event) {
	switch (event.keyCode) {

	}
});
// 返回值:jQuery 	keypress([[data],fn])
// 每插入一个字符,就会发生 keypress 事件
// 返回值:jQuery 	keyup([[data],fn])
// 返回值:jQuery 	mousedown([[data],fn])
$("button").mousedown(function() {
	$("p").slideToggle();
});
// 返回值:jQuery 	mouseup([[data],fn])
// 返回值:jQuery 	mouseenter([[data],fn])
// 与 mouseover 事件不同,只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。
$("p").mouseenter(function() {
	$("p").css("background-color", "yellow");
});
// 返回值:jQuery 	mouseleave([[data],fn])
// 只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件
// 返回值:jQuery 	mouseover([[data],fn])
// 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件
// 返回值:jQuery 	mouseout([[data],fn])
// 不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件
// 返回值:jQuery 	mousemove([[data],fn])
$(document).mousemove(function(e) {
	$("span").text(e.pageX + "," + e.pageY);
});
// 返回值:jQuery 	resize([[data],fn])
$(window).resize(function() {
	alert("stop it");
});
// 返回值:jQuery 	scroll([[data],fn])
$(window).scroll(function() {
	$("span").text(x += 1);
});
// 返回值:jQuery 	select([[data],fn])
// textarea 或文本类型的 input 元素
$("input").select(function() {
	return false; //防止触发浏览器的默认行为
});
// 返回值:jQuery 	submit([[data],fn])
// 只适用于表单元素
// 返回值:jQuery 	unload([[data],fn])

// 效果
// 返回值:jQuery 	show([speed,[easing],[fn]])
// easing:(Optional) 用来指定切换效果,默认是"swing",可用参数"linear"
// 返回值:jQuery 	hide([speed,[easing],[fn]])
// 返回值:jQuery 	slideDown([speed],[easing],[fn])
// 返回值:jQuery 	slideUp([speed,[easing],[fn]])
$("p").slideUp("slow");
// 返回值:jQuery 	slideToggle([speed],[easing],[fn])
// 返回值:jQuery 	fadeIn([speed],[easing],[fn])
// 返回值:jQuery 	fadeOut([speed],[easing],[fn])
// 返回值:jQuery 	fadeTo([[speed],opacity,[easing],[fn]])
$("p").fadeTo("fast", 0.6, function() {
	alert("animation done");
});
// 返回值:jQuery 	fadeToggle([speed,[easing],[fn]])
// 返回值:jQuery 	animate(params,[speed],[easing],[fn])
// 所有指定的属性必须用骆驼形式,比如用marginLeft代替margin-left
// 如需对位置进行操作,要记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute!
$("#go").click(function() {
	$("#block").animate({
		width: "90%",
		height: "100%",
		fontSize: "10em",
		borderWidth: 10
	}, 1000);
});
$("#right").animate({
	opacity: 'show',
	height: 'toggle'
}, "slow", "easein");
// 返回值:jQuery 	stop([clearQueue],[jumpToEnd])
// 返回值:jQuery 	delay(duration,[queueName])
// 返回值:jQuery 	finish( [queue ] )
// .stop(true, true)将清除队列,并且目前的动画跳转到其最终值。但是,不同的是,.finish() 会导致所有排队的动画的CSS属性跳转到他们的最终值。
// 返回值:Boolean	jQuery.fx.off
// 返回值:Number	jQuery.fx.interval


// Ajax
// 返回值:XMLHttpRequest 	jQuery.ajax(url,[settings])
$.ajax({
		url: '/path/to/file',
		type: 'default GET (Other values: POST)',
		dataType: 'default: Intelligent Guess (Other values: xml, json, script, or html)',
		data: {
			param1: 'value1'
		},
		success: function function_name(data, textStatus, jqXHR) {
			// body...
		},
		complete: function function_name(argument) {
			// body...
		},
		contentType: 'application/x-www-form-erlencoded',
		context: document,
		error: function function_name(XHR, textStatus, errorThrown) {
			// body...
		}
	}).done(function() {
		console.log("success");
	})
	.fail(function() {
		console.log("error");
	})
	.always(function() {
		console.log("complete");
	});
// 返回值:jQuery 			load(url, [data], [callback])
$("#feeds").load("feeds.php", {
	limit: 25
}, function() {
	alert("loaded");
});
// 返回值:XMLHttpRequest	jQuery.get(url, [data], [callback], [type])
$.get('test.php', {
	name: "jhon",
	time: 2 px
}, function(argument) {
	// body...
});
// 返回值:XMLHttpRequest	jQuery.getJSON(url, [data], [callback])
$.getJSON('test.js', {
	name: 'john',
	time: '2pm'
}, function(json, textStatus) {
	alert("json data:" + json.users[3].name);
});
// 返回值:XMLHttpRequest	jQuery.getScript(url, [callback])
$.getScript("test.js", function() {
	alert("script");
});
// 返回值:XMLHttpRequest	jQuery.post(url, [data], [callback], [type])
$.post("test.php", {
	"func": getNameAndTime
}, function(data) {
	alert(data.name);
}, "json");
// 返回值:jQuery 			ajaxComplete(callback)
$("#txt").ajaxComplete(function() {
	$("#wait").css("display", "none");
});
// 返回值:jQuery 			ajaxError(callback)
// 返回值:jQuery 			ajaxSend(callback)
// 返回值:jQuery 			ajaxStart(callback)
// 返回值:jQuery 			ajaxStop(callback)
// 返回值:jQuery 			ajaxSuccess(callback)
// XMLHttpRequest 对象和设置作为参数传递给回调函数。
$("#msg").ajaxSuccess(function(evt, request, settings) {
	$(this).append("<li>请求成功</li>");
});
// 返回值:undefined			jQuery.ajaxPrefilter( [dataTypes] , handler(options, originalOptions, jqXHR) )
// 返回值:jQuery 			jQuery.ajaxSetup([options])
// 返回值:String 			serialize()
// 返回值:Array<Object>		serializeArray()
// 序列化表格元素 (类似 '.serialize()' 方法) 返回 JSON 数据结构数据。

// 属性
// 返回值:String 	attr(name|properties|key,value|fn)
$("img").attr({
	src: "test.jpg",
	alt: "test image"
});
$("img").attr("src", "test.jpg");
// 返回值:jQuery 	removeAttr(name)
// 返回值:jQuery 	prop(name|properties|key,value|fn)
// attribute表示HTML文档节点的属性,property表示JS对象的属性。
// 返回值:jQuery 	removeProp(name)
// 返回值:jQuery 	addClass(class|fn)
// 返回值:jQuery 	removeClass([class|fn])
$("li:last").removeClass(function() {
	return $(this).prev().attr('class');
});
// 返回值:jQuery 	toggleClass(class|fn[,sw])
var count = 0;
$("p").click(function() {
	$(this).toggleClass("highlight", count++ % 3 == 0);
});
// 返回值:String 	html([val|fn])
$('p').html(); //返回匹配元素的内容
$('p').has(function(n) {
	return "这个P元素的index是:" + n;
}); //设置匹配元素的内容
// 返回值:String 	text([val|fn])
// 返回值:String,Array 		val([val|fn|arr])


// CSS
// 返回值:String 	css(name|pro|[,val|fn])
// 返回值:Object 	jQuery.cssHooks
// 返回值:Object 	offset([coordinates])
// 获取匹配元素在当前视口的相对偏移。
var p = $("p:last")
var offset = p.offset();
p.html("left:" + offset.left + "top:" + offset.top);
// 返回值:Object{top,left}	position()
// 获取匹配元素相对父元素的偏移。
// 返回值:Integer	scrollTop([val])
// 获取匹配元素相对滚动条顶部的偏移。
// 返回值:Integer	scrollLeft([val])
// 返回值:Integer 	height([val|fn])
// 不包括padding,border,margin
// 返回值:Integer 	innerHeight()
// 包括padding,不包括border,margin
// 返回值:Integer 	outerHeight([options])
// 包括padding,border,margin
// 返回值:Integer 	width([val|fn])
// 返回值:Integer 	innerWidth()
// 返回值:Integer 	outerWidth([options])



// 筛选
// 返回值:jQuery 	eq(index|-index)
// 返回值:jQuery 	first()
// 返回值:jQuery 	last()
// 返回值:Boolean	hasClass(class)
// 返回值:jQuery 	filter(expr|obj|ele|fn)
$("p").filter(".selected,:first");
// 返回值:Boolean	is(expr|obj|ele|fn)
$("li").click(function() {
	var $li = $(this);
	isWithTwo = $li.is(function() {
		return $('strong', this).length === 2;
	});
	if (isWithTwo) {
		$li.css('background-color', 'green');
	} else {
		$li.css('background-color', 'red');
	}
}); //如果点击的是第二个strong,当前的li增加背景色为绿色
// 返回值:jQuery 	map(callback)
$("p").append($("input").map(function() {
	return $(this).val();
}).get().join(",")); //把每个input元素的值建立一个列表
// 返回值:jQuery 	has(expr|ele)
// filter()方法,条件作用于自身;has()方法条件是作用于它的后代元素中。
$("ul").has("li"); //含有li的ul
// 返回值:jQuery 	not(expr|ele|fn)
// 从匹配的集合中删除与指定表达式匹配的元素
$("p").not($("#select")).css("background-color", "red");
// 返回值:jQuery 	slice(start, [end])
$("p").slice(0, 1).wrapInner('<div class="extra-wrapper"></div>');
// 返回值:jQuery 	children([expr])
// 返回值:jQuery 	closest(expr,[context]|object|element)
// 返回值:jQuery 	find(expr|obj|ele)
// children()返回匹配的子元素,find()返回匹配的所有后代元素
$("ul").find('li'); //在ul里查找li,注意与has()的区别
// 返回值:jQuery 	next([expr])
$("p").next(".selected");
// 返回值:jQuery 	nextAll([expr])
// 返回值:jQuery 	nextUntil([exp|ele][,fil])
// 返回值:jQuery 	offsetParent()
// 返回父元素中第一个其position设为relative或者absolute的元素
// 返回值:jQuery 	parent([expr])
// 返回值:jQuery 	parents([expr])
// 返回值:jQuery 	parentsUntil([expr|element][,filter])
// 返回值:jQuery 	prev([expr])
// 返回值:jQuery 	prevAll([expr])
// 返回值:jQuery 	prevUntil([exp|ele][,fil])
// 返回值:jQuery 	siblings([expr])
// 返回值:jQuery 	add(expr|ele|html|obj[,con])
// add()追加到元素集合中,append()添加元素节点
// 返回值:jQuery 	andSelf()
// 返回值:jQuery 	contents()
// 返回值:jQuery 	end()




// 事件对象
// 延迟对象
// 回调函数
// 工具

// 事件委托
// attr() 与 prop()	的区别再看看
// 返回值:Object 	jQuery.cssHooks
// 返回值:jQuery 	closest(expr,[context]|object|element)
// 返回值:jQuery 	find(expr|obj|ele)
// position:absolute|relative
// absolute(绝对定位) 脱离文档流,通过 top,bottom,left,right 定位。选取其最近一个具有定位设置的父级对象进行绝对定位,如果对象的父级没有设置定位属性,absolute元素将以body坐标原点进行定位,可以通过z-index进行层次分级。
// 注意设置position之后,它的兄弟元素和后代元素如何显示
// float


// bootstap的滚动监听的使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值