定時器: javascript
setInterval clearIntervalcss
setTimeout clearTimeouthtml
顯示: img.style.display = "block"java
隱藏: img.style.display = "none"jquery
img 對象數據庫
style屬性: style對象設計模式
得到全部的行數組
table.rows[]瀏覽器
修改行的顏色服務器
row.bgColor ="red"
row.style.backgroundColor = "black"
row.style.background = "red"
"background-color:red"
"background:red"
checked屬性
如何獲取全部複選框:
document.getElementsByName get Elements By Name 數據庫裏面
JS中的數組: ["城市"]
new Array()
DOM樹操做:
建立節點: document.createElement
建立文本節點: document.createTextNode
添加節點: appendChild
select下拉列表
multiple 容許多選
ondblclick : 雙擊事件
for循環遍歷,一邊遍歷一邊移除出現的問題
事件:
得到焦點事件: onfocus
失去焦點事件: onblur
按鍵擡起事件: onkeyup
鼠標移入: onmouseenter
鼠標移出: onmouseout
JS引入外部文件 : script
當用戶打開界面,3秒鐘以後彈出廣告,這個廣告顯示5秒鐘,隱藏廣告
定時器: setTimeout
顯示和隱藏: style.display = "block/none"
什麼JQuery:
jQuery是一個快速、簡潔的JavaScript框架,是繼Prototype以後又一個優秀的JavaScript代碼庫(或JavaScript框架)。jQuery設計的宗旨是「write Less,Do More」,即倡導寫更少的代碼,作更多的事情。它封裝JavaScript經常使用的功能代碼,提供一種簡便的JavaScript設計模式,優化HTML文檔操做、事件處理、動畫設計和Ajax交互。
jQuery的核心特性能夠總結爲:具備獨特的鏈式語法和短小清晰的多功能接口;具備高效靈活的css選擇器,而且可對CSS選擇器進行擴展;擁有便捷的插件擴展機制和豐富的插件。jQuery兼容各類主流瀏覽器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等
JQuery的做用:
1. 寫更少的代碼,作更多的事情: write Less ,Do more
2. 將咱們頁面的JS代碼和HTML頁面代碼進行分離
爲何學習JQuery:
提升咱們的工做效率
JQ的入門
<script> //js文檔加載完成的事件 window.onload = function(){ alert("window.onload 111"); } window.onload = function(){ alert("window.onload 222"); } /*文檔加載完成的事件*/ jQuery(document).ready(function(){ alert("jQuery(document).ready(function()"); }); /* jQuery 簡寫成 $ */ $(document).ready(function(){ alert("$(document).ready(function()"); }); /* 最簡單的寫法 */ $(function(){ alert("$(function(){"); }); </script>
【JQ中根據ID查找元素】
全都是根據選擇器去找的 #ID{} .類名{} $("#ID的名稱")
【JQ和JS之間的轉換】
function changeJS(){ var div = document.getElementById("div1"); // div.innerHTML = "JS成功修改了內容" //將JS對象轉成JQ對象 $(div).html("轉成JQ對象來修改內容") } $(function(){ //給按鈕綁定事件 $("#btn2").click(function(){ //找到div1 // $("#div1").html("JQ方式成功修改了內容"); //將JQ對象轉成JS對象來調用 var $div = $("#div1"); // var jsDiv = $div.get(0); var jsDiv = $div[0]; jsDiv.innerHTML="jq轉成JS對象成功"; }); });
JQ的開發步驟: (將咱們頁面的JS代碼和HTML頁面代碼進行分離)
1. 導入JQ相關的文件 2. 文檔加載完成事件: $(function) : 頁面初始化的操做: 綁定事件, 啓動頁面定時器 3. 肯定相關操做的事件 4. 事件觸發函數 5. 函數裏面再去操做相關的元素
顯示和隱藏 img.style.display
【JQ中的動畫效果】
show() hide() slideUp slideDown fadeIn fadeOut animate : 自定義動畫
<script> //顯示廣告 function showAd(){ $("#img1").slideDown(2000); setTimeout("hideAd()",3000); } //隱藏廣告 function hideAd(){ $("#img1").slideUp(2000); } $(function(){ setTimeout("showAd()",3000); }); </script>
讓咱們可以更加精確找到咱們要操做的元素
<!-- - ID選擇器 : #ID的名稱 - 類選擇器: 以 . 開頭 .類名 - 元素選擇器: 標籤的名稱 - 通配符選擇器: * - 選擇器,選擇器: 選擇器1,選擇器2 --> <script> //文檔加載事件,頁面初始化的操做 $(function(){ //初始化操做: 給按鈕綁定事件 $("#btn1").click(function(){ $("#two").css("background-color","palegreen"); }); //找出mini類的全部元素 $("#btn2").click(function(){ $(".mini").css("background-color","palegreen"); }); $("#btn3").click(function(){ $("div").css("background-color","palegreen"); }); $("#btn4").click(function(){ $("*").css("background-color","palegreen"); }); /*選擇器分組*/ //找出mini類 和 span元素 $("#btn5").click(function(){ $(".mini,span").css("background-color","palegreen"); }); }); </script>
<script> //文檔加載事件,頁面初始化的操做 $(function(){ //初始化操做: 給按鈕綁定事件 //找出body下面的子div $("#btn1").click(function(){ $("body > div").css("background-color","palegreen"); }); //找出body下面的全部div $("#btn2").click(function(){ $("body div").css("background-color","palegreen"); }); $("#btn3").click(function(){ $("#one+div").css("background-color","palegreen"); }); $("#btn4").click(function(){ $("#two~div").css("background-color","palegreen"); }); }); </script>
<script> $(function(){ /<script> //文檔加載事件,頁面初始化的操做 $(function(){ //初始化操做: 給按鈕綁定事件 //過濾出全部div中第一個元素 $("#btn1").click(function(){ $("div:first").css("background-color","palegreen"); }); //過濾出全部div中偶數位的div $("#btn2").click(function(){ $("div:even").css("background-color","palegreen"); }); $("#btn3").click(function(){ $("div:odd").css("background-color","palegreen"); }); $("#btn4").click(function(){ $("div:gt(2)").css("background-color","palegreen"); }); }); </script>
$(function(){ //找到有name屬性的input $("#btn1").click(function(){ $("input[name]").attr("checked",true); }); $("#btn2").click(function(){ $("input[name='accept']").attr("checked",true); }); $("#btn3").click(function(){ $("input[name='newsletter'][value='Hot Fuzz']").attr("checked",true); }); });
<script> //1.文檔加載事件 $(function(){ $(":text").css("background-color","pink"); }); </script>
上午的內容回顧:
什麼是JQ: write less , do more: 寫更少的代碼,作更多的事
javascript函數庫
1.11版本
定時器:
動畫效果:
show : 顯示
hide : 隱藏
slideDown:
slideUp: 向上滑動
fadeIn
fadeOut
JQ選擇器:
基本選擇器:
ID選擇器: #ID的名字
類選擇器: .類名
元素選擇器: 標籤名稱
通配符選擇器: *
選擇器分組: 選擇器1,選擇器2
層級選擇器:
後代選擇器: 選擇器1 兒孫
子元素選擇器: 選擇器1 > 兒子
相鄰兄弟選擇器: 選擇器1 + 選擇器2 找出緊挨着它的弟弟
全部弟弟選擇器: 選擇器1~選擇器2 找出全部弟弟
基本過濾器:
選擇器:first : 找出的是第一個
:last
:even 找出索引爲偶數
:odd 找出奇數索引
:gt(index) : 大於索引
:lt(index) 小於
:eq(index) 等於
屬性選擇器:
選擇器[href] : 單個屬性
選擇器[href][title] : 多個屬性 選擇器[href][title='test'] : 多個屬性,包含值
表單過濾器:
:input 找出全部輸入項: input textarea select
:text
:password
表單對象屬性:
找出select中被選中的那一項:
option:selected
JQ的開發步驟:
1. 導入JQ相關的包 2. 文檔加載文成的事件: 頁面初始化: 綁定事件, 啓動定時器 3. 肯定事件 4. 實現事件索要觸發的函數 5. 函數裏面再去操做咱們要操做的元素
在咱們的實際開發過程當中,咱們的表格若是全部的行都是同樣的話,很容易看花眼,因此咱們須要讓咱們的表格隔行換色
獲取全部行 table.rows
遍歷全部行
根據行號去修改每一行的背景顏色: bgColor
style.backgroundColor = "red"
$(function(){ //得到全部的行 : 元素選擇器 $("tbody > tr:even").css("background-color","#CCCCCC"); //修改基數行 $("tbody > tr:odd").css("background-color","#FFF38F"); // $("tbody > tr").css("background-color","#FFF38F"); });
在咱們對錶格處理的時,有些狀況下,咱們須要對錶格進行批量處理,
在咱們的註冊表單中,一般咱們須要知道用戶的籍貫,須要一個給用選擇的項,當用戶選中了省份以後,列出省下面全部的城市
添加節點 : appendChild (JS)
$(function(){ $("#province").change(function(){ // alert(this.value); //獲得城市信息 var cities = provinces[this.value]; //清空城市select中的option /*var $city = $("#city"); //將JQ對象轉成JS對象 var citySelect = $city.get(0) citySelect.options.length = 0;*/ $("#city").empty(); //採用JQ的方式清空 //遍歷城市數據 $(cities).each(function(i,n){ $("#city").append("<option>"+n+"</option>"); }); }); });
咱們的商品一般包含已經有了的, 還有沒有的,如今咱們須要有一個頁面用於動態編輯這些商品
1. 導入JQ的文件 2. 文檔加載函數 :頁面初始化 3.肯定事件 : 點擊事件 onclick 4. 事件觸發函數 1. 移動被選中的那一項到右邊
<script type="text/javascript" src="../js/jquery-1.11.0.js" ></script> <script> $(function(){ $("#a1").click(function(){ //找到被選中的那一項 //將被選中項添加到右邊 $("#rightSelect").append($("#leftSelect option:selected")); }); //將左邊全部商品移動到右邊 $("#a2").click(function(){ $("#rightSelect").append($("#leftSelect option")); }); }); </script>
定時器
動畫效果: show hide slideDown slideUp fadeIn fadeOut animate
基本選擇器:
ID選擇器: #ID名稱
類選擇器: .類名
元素選擇器: 元素/標籤名稱
通配符選擇器: * 找出全部頁面元素 包含頁面上全部的標籤
選擇器分組 : 選擇器1, 選擇器2 [選擇器1,選擇器2]
層級選擇器:
後代選擇器: 選擇器1 選擇器2 找出全部的後代,兒子孫子曾孫
子元素選擇器: 選擇器1 >選擇器2 找出全部兒子
相鄰兄弟選擇器: 選擇器1+選擇器2 : 找出緊挨着本身那個弟弟
兄弟選擇器 : 選擇器1~選擇器2 : 找出全部的弟弟
屬性選擇器:
選擇器[屬性名稱]
選擇器[屬性名稱][屬性名名] 選擇器[屬性名稱='屬性值'][屬性名稱='屬性值'][屬性名稱='屬性值']
表單選擇器:
:input 找出全部的輸入項 : 不僅僅找出input textarea select
:text 找出type類型爲 text
:password
基本過濾器:
:even
:odd
:gt
:lt
:eq
:first
:last
表單對象屬性:
:selected
:checked
$(function) : 文檔加載完成的事件 css() : 修改css樣式 prop() : 修改屬性/ 獲取屬性 html() : 修改innerHTML append : 給本身添加子節點 appendTo : 將本身添加到別人家,給本身找一個爹 prepend : 在本身最前面添加子節點 after : 在本身後面添加一個兄弟 empty : 清空全部子節點 $(cities).each(function(i,n){ }) $.each(arr,function(i,n){ }); 瞭解, 熟悉, 熟練, 精通 通過一個項目,將全部學過串起來
在用戶提交表單的時候, 咱們最好是可以在用戶數據提交給服務器以前去作一次校驗,防止服務器壓力過大,而且須要給用戶一個友好提示