问答
一、说说库和框架的区别?
1.库就是一些已经封装好了的函数,这些函数可以实现特定的效果,只需要在使用的时候用少量的代码去调动,这里的控制权在于你,你来决定怎样使用库。就好像一个工人手里的工具箱,根据不同的需求使用合适的工具。
2.框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里的控制权在框架,它来根据具体的应用逻辑来调用你的代码。就好像工厂里的模具,你只需要提供原材料,最终呈现什么样子由模具决定。
二、jquery 能做什么?
jQuery是一个兼容多浏览器的JavaScript库,核心理念是write less,do more,它的语法设计可以使开发更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax等。除此以外,jQuery还提供API让开发者编写插件。总之,使用jQuery能使开发者很轻松的开发出功能强大的静态或动态页面。
三、jquery 对象和 DOM 原生对象有什么区别?如何转化?
1.区别:
jQuery对象是通过jQuery包装DOM对象后产生的对象,只能使用jQuery中封装好的对象和方法。DOM对象只能使用JavaScript原生的属性和方法,不能使用jQuery里面的方法。二者可以相互转化。
2.转化:
jQuery对象转换为DOM对象:jQuery对象是一个类数组的对象可以使用[index]或者get[index]方法转换为DOM对象。
DOM对象转换为jQuery对象:用$()
把DOM对象包装起来,就可以转换为jQuery对象。
四、jquery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?
1..bind()
为一个元素绑定一个事件处理程序,已经弃用。
2..unbind()
用来解除bind()
方法绑定的事件,已经弃用。
3..delegate()
对目标元素绑定事件代理,已经弃用。
4..live()
事件代理绑定到$(document)元素上,已经弃用。
5..on()
在选定的元素上绑定一个或多个事件处理函数。从jQuery1.7开始,.on()
方法提供了事件处理的所有功能。所以,为了统一和方便,推荐使用.on()
方法作为绑定事件的方法。
6..off()
用来移除用.on()
方法绑定的事件。
五、jquery 如何展示/隐藏元素?
1.展示:
$(selector).show(speed,callback);
可选的参数speed:规定元素从隐藏到完全可见的速度,默认为0;
可选的参数callback:show函数执行完了之后,要执行的函数;
本质上时修改dom.style.display属性。
2.隐藏:
$(selector).hide(speed,callback);
参数同上,speed表示元素隐藏的速度,hide方法修改元素的样式为display:none。
六、jQuery动画如何使用?
jQuery animate() 方法用于创建自定义动画。
$(selector).animate({params},speed,callback);
1.必需的params参数定义形成动画的CSS属性。
2.可选的speed参数规定效果的时长。它可以取以下值:“slow”、“fast”或毫秒。
3.可选的callback参数是动画完成后所执行的函数名称。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style>
.box{
width: 100px;
height: 100px;
background: red;
position: relative;
}
</style>
<script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.js"></script>
</head>
<body>
<div class="box"></div>
<br>
<button class="btn1">改变宽高</button>
<button class="btn2">改变位置</button>
<button class="btn3">恢复</button>
<script>
$(".btn1").on("click",function(){
$(".box").animate({
width:"150px",
height:"150px"
})
})
$(".btn2").on("click",function(){
$(".box").animate({
left:"200px",
top:"300px"
})
})
$(".btn3").on("click",function(){
$(".box").animate({
width:"100px",
height:"100px"
})
})
$(".btn3").on("click",function(){
$(".box").animate({
left:"0px",
top:"0px"
})
})
</script>
</body>
</html>
七、如何设置和获取元素内部 HTML 内容?如何设置和获取元素内部文本?
1.html():设置或返回所选元素的内容(包括HTML标记)。
2.text():设置或返回所选元素的文本内容。
八、如何设置和获取表单用户输入或者选择的内容?如何设置和获取元素属性?
1.val() 设置或返回表单字段的值。
2.attr() 设置或返回元素的属性。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.js"></script>
</head>
<body>
<div id="header">
<p class="p1">段落<span>嘿嘿嘿</span></p>
<ul>
<li>我是1</li>
<li>我是2</li>
</ul>
</div>
<input id="text" type="text" placeholder="请输入手机号码">
<br>
<br>
<button id="btn1">设置获取HTML</button>
<button id="btn2">设置获取文本</button>
<button id="btn3">表单值</button>
<button id="btn4">表单属性</button>
<script>
$("#btn1").on("click",function(){
console.log($(".p1").text())
})
$("#btn2").on("click",function(){
console.log($(".p1").html())
})
$("#btn3").on("click",function(){
console.log($("#text").val())
})
$("#btn4").on("click",function(){
console.log($("#text").attr("placeholder"))
})
</script>
</body>
</html>