为什么我们没有在 <script> 标签中使用 type="text/javascript" ?
在 HTML5 中,不必那样做了。JavaScript 是 HTML5 以及所有现代浏览器中的默认脚本语言!
使用 Staticfile CDN、百度、又拍云、新浪、谷歌或微软的 jQuery,有一个很大的优势:
许多用户在访问其他站点时,已经从百度、又拍云、新浪、谷歌或微软加载过 jQuery。所以结果是,当他们访问您的站点时,会从缓存中加载 jQuery,这样可以减少加载时间。同时,大多数 CDN 都可以确保当用户向其请求文件时,会从离用户最近的服务器上返回响应,这样也可以提高加载速度。
$(document).ready(function(){ // 开始写 jQuery 代码... });
$(function(){ // 开始写 jQuery 代码... });
通过 $(":button") 可以选取所有 type="button" 的 <input> 元素 和 <button> 元素,如果去掉冒号,$("button")只能获取 <button> 元素。
$("#id", ".class") 复合选择器 $(div p span) 层级选择器 //div下的p元素中的span元素 $(div>p) 父子选择器 //div下的所有p元素 $(div+p) 相邻元素选择器 //div后面的p元素(仅一个p) $(div~p) 兄弟选择器 //div后面的所有p元素(同级别) $(.p:last) 类选择器 加 过滤选择器 第一个和最后一个(first 或者 last) $("#mytable td:odd") 层级选择 加 过滤选择器 奇偶(odd 或者 even) $("div p:eq(2)") 索引选择器 div下的第三个p元素(索引是从0开始) $("a[href='www.baidu.com']") 属性选择器 $("p:contains(test)") // 内容过滤选择器,包含text内容的p元素 $(":emtyp") //内容过滤选择器,所有空标签(不包含子标签和内容的标签)parent 相反 $(":hidden") //所有隐藏元素 visible $("input:enabled") //选取所有启用的表单元素 $(":disabled") //所有不可用的元素 $("input:checked") //获取所有选中的复选框单选按钮等 $("select option:selected") //获取选中的选项元素
那有木有考虑过append/prepend和after/before有什么区别呢?
append
<p> <span class="s1">s1</span> </p> <script> $("p").append('<span class="s2">s2</span>'); </script>
结果是这样的:
<p> <span class="s1">s1</span> <span class="s2">s2</span> </p>
after
<p> <span class="s1">s1</span> </p> <script> $("p").after('<span class="s2">s2</span>'); </script>
结果是这样的:
<p> <span class="s1">s1</span> </p> <span class="s2">s2</span>
总结:
append/prepend 是在选择元素内部嵌入。
after/before 是在元素外面追加。