题目1: jQuery 中, $(document).ready()是什么意思?
$(document).ready()方法:为防止文档在完全加载(就绪)之前运行Jquery代码。若在文档未完全加载前就运行函数,操作可能失败。必须在文档加载完后执行操作,可使用ready事件,作用相当于把js写到body末尾。
和window.onload的区别在于
window.onload:必须等网页中所有的元素全部加载完毕,才能执行
不能同时写多个,否则后面覆盖前面。
题目2: $node.html()和$node.text()的区别?
$node.html():获取元素内html标签加文本内容。
$node.text():只获取元素内的文本内容。
题目3: $.extend 的作用和用法?
//相同的属性会被最后的对象覆盖
$.extend(true(深拷贝)/false(不是深拷贝),obj1,obj2,boj3...)
var obj5=extend(true(深拷贝)/false(不是深拷贝),{},obj2,boj3...)
例子:
obj1={a:1}
obj2={a:2,b:2}
$.extend(true,obj1,obj2)
console.log(obj1)//{a:2,b:2}
题目4: jQuery 的链式调用是什么?
当jQuery方法函数执行完以后,返回的值依然是当前对像,所以可以继续调用方法,就形成了一种链式调用。
$(#ct).css('color','blue').show(400).hide();
题目5: jQuery 中 data 函数的作用
其使用方法为:
$(selector).data(name,value)
$(selector).data(name)
data 函数的作用是在元素上存放或读取数据,返回jQuery对象。
当参数只有一个key的时候,为读取该jQuery对象对应DOM中存储的key对应的值;当参数为两个时,为向该jQuery对象对应的DOM中存储key-value键值对的数据。
6 写出以下功能对应的 jQuery 方法:
- 给元素 $node 添加 class active,给元素 $noed 删除 class active
$("node").addClass("active")
$("node").removeClass("active")
- 展示元素$node, 隐藏元素$node
$("node").show()
$("node").hide()
- 获取元素$node 的 属性: id、src、title, 修改以上属性
$("node").attr("id")
$("node").attr("src")
$("node").attr("title")
$("node").attr("id","xxx")
$("node").attr("src","xxx")
$("node").attr("title","title")
- 给$node 添加自定义属性data-src
$('node').get(0).dataset.src = ''
- 在$ct 内部最开头添加元素$node
$(".ct").prepend("$('node')")
$("node").prependTo("$('.ct')") - 删除$node
$('nede').remove() - 把$ct里内容清空
$(".ct").empty() - 在$ct 里设置 html <div class="btn"></div>
$(".ct").html("<div class='btn'></div>") - 获取、设置$node 的宽度、高度(分别不包括内边距、包括内边距、包括边框、包括外边距)
$("node").width()
$("node").height()
$("node").innerWidth()
$("node").innerHeight()
$("node").outerWidth()
$("node").outerHeight()
$("node").outerWidth(true)
$("node").outerHeight(true)
- 获取窗口滚动条垂直滚动距离
$(window).scrollTop()
- 获取$node 到根节点水平、垂直偏移距离
$("node").offset().left
$("node").offset().top
- 修改$node 的样式,字体颜色设置红色,字体大小设置14px
$("node").css({
'color':'red',
'font-size':'14px'
})
- 遍历节点,把每个节点里面的文本内容重复一遍
$("node").each(function(){
$(this).text($(this).text() + $(this).text())
})
- 从$ct 里查找 class 为 .item的子元素
$(".ct").find('.item')
- 获取$ct 里面的所有孩子
$(".ct").children()
- 对于$node,向上找到 class 为'.ct'的父亲,在从该父亲找到'.panel'的孩子
$("node").parents(".ct").find(".panel")
- 获取选择元素的数量
$("node").length
- 获取当前元素在兄弟中的排行
$("node").index()
题目7:
用jQuery实现以下操作
当点击$btn 时,让 $btn 的背景色变为红色再变为蓝色
当窗口滚动时,获取垂直滚动距离
当鼠标放置到$div 上,把$div 背景色改为红色,移出鼠标背景色变为白色
当鼠标激活 input 输入框时让输入框边框变为蓝色,当输入框内容改变时把输入框里的文字小写变为大写,当输入框失去焦点时去掉边框蓝色,控制台展示输入框里的文字
当选择 select 后,获取用户选择的内容
(链接)http://js.jirengu.com/huhayufaju/6/edit
网友评论