//jq对象和原生对象可以相互转化
//原则上两者可以混用
//1.jq对象如何转化原生对象
//原生转1.写成.css 2.改变前面的$
//jq转原生 1.$()[0] 因为打印$时候第一个是元素对象 2.$().get(0) )
$('#test')[0].style.height = "100px";
$('#test').get(0).style.background = "red";//实际用法
//2.js原生对象如何转化为jq对象
var test = document.getElementById("test");
//假如你不是知道这个是不是jq 可以转换为jq 多转没事 $()
//转原生
$(test).css({
height:"100px",//(这里类似对象了 用逗号)
background:"red"
})
//遍历节点
//1.children
// $('bbb')[0].children 原生
//$('bbb').children("h2"); //获取bbb里面所有的子节点 后面children可以有参数(里面填的就是你想要改变得)
//2.next() 获取匹配元素的紧邻的同辈元素
//3.siblings 获取除了这个同辈元素
//4.parent()获得当前匹配元素集合中每个元素的父元素
//5.prev()获取匹配元素集合中每个元素紧邻的前一个同辈元素
//6.find()获得当前匹配元素集合中每个元素的后代
//这个方法必须得填参数 不然找不到
//7.add()将元素加到元素添加到元素的集合中
//8.each() 对jq对象进行遍历 为每个匹配元素执行函数
//$('').each(function(index,ele){}) 接受两个参数 和map()参数相反 还有map()一定要reuturn出来
//9.end() 结束当前链中最近的一次筛选操作 并将匹配元素集合返回到前一次的状态
// $('li2').prev().parent().parent().siblings().end().css(){}
//10.eq()将匹配元素集合缩减为位于制定索引的新元素
//$('.tag1').eq(1)从tag1里面先全部拿出来 然后在里面选择下标为1的元素
//$('.tag1:eq(1)') 直接从tag1里面拿出下标为1的元素
//获取的都是jq对象 下标都是1
//11.filter() 将匹配元素集合缩减为匹配选择器或者匹配函数返回值得新元素
//12.has()将匹配元素集合缩减为包含特定元素的后代的集合
// $("div").has("p").css({
// border:"1px solid red"
// });
//13.is()根据选择器检查当前匹配元素集合,存在至少一个匹配元素,则返回true
//console.log($("li").is(".tag1"));
//14. .not()
//$("li").not("#li1").css("border","1px solid red")
//15. .parents() 获得当前匹配元素集合中每个元素的祖先元素,由选择器筛选(可选)
//$("#li1").parent().css("border","1px solid red")
//16.addClass()相匹配的元素添加制定的类名
//17.hasClass()判断匹配元素是否含有某个class名
// $('#li').hasClass('.tag2');
//html()设置或返回匹配的元素集合中的html内容
//$('wrap').html('hha');
//19.removeAttr()从所有匹配的元素中移除制定的属性
//20.reomoveClass()从所有匹配的元素中删除全部或者制定的类
//21. toggleClass() 从匹配的元素中添加或删除一个类
//匹配元素有这个 class 名就删除,没有就添加
//$("li").toggleClass("tag1")
//22. val() 设置或返回匹配元素的值,用在表单元素
//相当于 js 里面的 value
//设置
//$("input").val("你看谁")
//获取
//console.log($("input").val())