17jq1$创建渲染操作元素

123 阅读2分钟

1、JQ事件 1、回忆目前学过的事件有哪些: click/change/mouseover(冒泡)|mouseenter(无冒泡)/mouseout(冒泡)|mouseleave(无冒泡)/mousemove/blur/focus/submit/input/dblclick/contextmenu/resize/mousedown/mouseup/keydown/load

2、JQ如何绑定事件: $("xx").事件名(callback)

3、面试题:原生JS中 window.onload 和 (document).ready(callback)有什么区别1window.onload:一个页面只能使用一次,执行效率也很低下:等待所有的资源(HTMLCSSJS、图片、视频、音频...)加载完毕后才会执行,可以说是最后才执行的代码2(document).ready(callback) 有什么区别 1、window.onload:一个页面只能使用一次,执行效率也很低下:等待所有的资源(HTML、CSS、JS、图片、视频、音频...)加载完毕后才会执行,可以说是最后才执行的代码 2、(document).ready(callback):一个页面可以用多个:执行效率相对较高,只等待DOM树加载完毕就会执行 简写:1、().ready(callback)2().ready(callback) 2、(callback);//工厂函数的第四个功能 为什么: 1、面试题 2、有可能我们会去读别人写的代码 但是我们绝对不会使用,因为我们的js始终放在最后面

4、暂未学过的新事件: 1、*****滚动监听事件 作用: 1、做出更好看更多的特效 2、滚动监听搭配上ajax(往下滚动都显示出更多的新内容):等我们学了JQUERY提供的AJAX再说

	如何使用:
	  $(window).scroll(()=>{
		//1、获取滚动条当前的位置:$(window).scrollTop();

		//2、获取xx距离页面顶部有多远:$("xx").offset().top/left;
	  })

上午练习: 0、面试题试一下 1、滚动监听:导航条 + 到了某处才显示出来的元素 2、JQ的预定义动画

2、JQ动画: 1、预定义动画:3组9个 1、隐藏hide和显示show: $("xx").api(time,callback); 特殊: 1、如果没有传入任何一个参数,不带有动画,瞬间显示和瞬间隐藏 2、如果带有事件参数,则具有动画,同时修改元素的宽度和高度和透明度 3、回调函数在动画执行完毕后才会执行 - 屌

		$("xx").toggle(time,callback); === show+hide;程序员连判断都不用自己写了

	2、滑动效果:隐藏slideUp和显示slideDown:
		$("xx").api(time,callback);
			特殊:
			  1、如果没有传入任何一个参数,其实也会带有动画,只不过速度很快
			  2、如果带有事件参数,则具有动画,同时修改元素的高度
			  3、回调函数在动画执行完毕后才会执行 - 屌

		$("xx").slideToggle(time,callback); === slideUp+slideDown;程序员连判断都不用自己写了

	2、淡入淡出:隐藏fadeOut和显示fadeIn:
		$("xx").api(time,callback);
			特殊:
			  1、如果没有传入任何一个参数,其实也会带有动画,只不过速度很快
			  2、如果带有事件参数,则具有动画,同时修改元素的高度
			  3、回调函数在动画执行完毕后才会执行 - 屌

		$("xx").fadeToggle(time,callback); === fadeOut+fadeIn;程序员连判断都不用自己写了

2、自定义动画:
	1、并发动画:所有动画一起执行
		$("xx").animate({
			"css":"新值",
			...
		},time,callback)

	2、排队动画:做完一个在做下一个
		$("xx").animate({
			"css":"新值"
		},time,callback).animate({
			"css":"新值"
		},time,callback).animate({
			"css":"新值"
		},time,callback).animate({
			"css":"新值"
		},time,callback).animate({
			"css":"新值"
		},time,callback).animate({
			"css":"新值"
		},time,callback)


	特殊:1、animate方法不支持颜色相关和transform转换相关的操作
		解决:1、不用animate,用css代替,但是就会损失掉动画执行完毕的回调函数
		      2、等我们学习jQueryUI,jQueryUI会对animate方法进行增强操作
	      2、只要是动画就有可能会排队,有的情况要记得停止动画
			$("xx").stop().animate()

作业: 1、使用滚动监听,做出(1、滚动时会变成固定定位的导航条 2、滚动到某处,某个东西才会显示出来) 2、重做鼠标跟随效果 3、无缝轮播: 判断是否具有动画: ("xx").is(":animated")xx具有动画才为true!("xx").is(":animated") - xx具有动画才为true !("xx").is(":animated") - xx不具有动画才为true 4、联合答辩项目的规则: 1、两个人一组,自选项目电商(换logo,换交互色) 2、全栈开发:7个页面:首页、产品列表页、详情页、登录、注册、购物车页、结算页 3、要求页面美观 4、一个人只做前端(HTML+CSS+JS+AJAX),另一个人(HTML+CSS+JS+AJAX+PHP+MYSQL) 如果两个人实力相当,平均分配,最后在合并,以防有冲突 5、优先一起写一个开发文档: 首页: 业务功能:轮播、倒计时... 业务逻辑:跳转到哪些页面... 甚至可以规划出,数据库需要几个表,PHP的哪些接口对应着哪些操作 6、6月17号答辩: 三个方面: 1、表达能力 - 30分 2、页面美观 - 30分 3、逻辑方面 - 40分