jQuery學習筆記整理[那就算半隻教程吧(◕ܫ◕)](三)


jQuery - 獲取內容和屬性

jQuery 擁有可操作 HTML 元素和屬性的強大方法。
DOM = Document Object Model(文檔對象模型)

  • jQuery 中非常重要的部分,就是操作 DOM 的能力。
  • jQuery 提供一系列與 DOM 相關的方法,這使訪問和操作元素和屬性變得很容易。

DOM操作

三個簡單實用的用於 DOM 操作的 jQuery 方法:

  • text() - 設置或返回所選元素的文本內容
  • html() - 設置或返回所選元素的內容(包括 HTML 標記)
  • val() - 設置或返回表單字段的值
  • attr() 方法用於獲取屬性值
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script src="https://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
	<script> 
		$(document).ready(function(){
			$("#btn1").click(function(){
				alert("Text:" + $('#test').text());
			});
			$("#btn2").click(function(){
				alert("html:" + $('#test').html());
			});
		});

    </script>
 
</head>
<body>
	<p id="test">這是段落中的<b>粗文本</b></p>
	<button id="btn1"> 顯示文本</button>
	<button id="btn2"> 顯示HTML</button>
</html>![在這裏插入圖片描述](https://img-blog.csdnimg.cn/20200531110852243.gif)

在這裏插入圖片描述

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    alert("值爲: " + $("#test").val());
  });
});
</script>
</head>

<body>
<p>名稱: <input type="text" id="test" value="值"></p>
<button>顯示值</button>
</body>
</html>

在這裏插入圖片描述

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    alert($("#baidu").attr("href"));
  });
});
</script>
</head>

<body>
<p><a href="//www.baidu.com" id="baidu">百度一下</a></p>
<button>顯示 href 屬性的值</button>
</body>
</html>

在這裏插入圖片描述

設置內容和屬性

設置內容 - text()、html() 以及 val()

  • text() - 設置或返回所選元素的文本內容
  • html() - 設置或返回所選元素的內容(包括 HTML 標記)
  • val() - 設置或返回表單字段的值
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script src="https://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
	<script> 
		$(document).ready(function(){
			$('#btn1').click(function(){
				$('#test').text('很高興認識你');
			});
			$('#btn2').click(function(){
				$('#test2').html("<b>很高興認識你</b>");
				});
			$('#btn3').click(function(){
				$('#test3').val("很高興認識你");
			});

		});

    </script>
 
</head>
<body>
	<p id="test">變成文本</p>
	<p id="test2">變成html</p>
	<p >一隻文本框框<input type="text" id="test3" value="框框框"></p>
	<button id="btn1">設置文本</button>
	<button id="btn2">設置HTML</button>
	<button id="btn3">設置值</button>

</html>

在這裏插入圖片描述
text()、html() 以及 val() 的回調函數
回調函數有兩個參數:被選元素列表中當前元素的下標,以及原始(舊的)值。然後以函數新值返回你希望使用的字符串。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("#btn1").click(function(){
    $("#test1").text(function(i,origText){
      return "舊文本: " + origText + " 新文本: Hello world! (index: " + i + ")"; 
    });
  });

  $("#btn2").click(function(){
    $("#test2").html(function(i,origText){
      return "舊 html: " + origText + " 新 html: Hello <b>world!</b> (index: " + i + ")"; 
    });
  });

});
</script>
</head>

<body>
<p id="test1">這是一個有 <b>粗體</b> 字的段落。</p>
<p id="test2">這是另外一個有 <b>粗體</b> 字的段落。</p>
<button id="btn1">顯示 新/舊 文本</button>
<button id="btn2">顯示 新/HTML</button>
</body>
</html>

在這裏插入圖片描述
設置屬性 - attr()

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    $("#baidu").attr("href","http://www.weibo.com/jquery");
  });
});
</script>
</head>

<body>
<p><a href="//www.baidu.com" id="baidu">百度一下</a></p>
<button>修改 href 值</button>
<p>點擊按鈕修改後,可以點擊鏈接查看鏈接地址是否變化。</p>
</body>
</html>

添加元素

  • append() - 在被選元素的結尾插入內容

  • prepend() - 在被選元素的開頭插入內容

  • after() - 在被選元素之後插入內容

  • before() - 在被選元素之前插入內容
    通過 append() 和 prepend() 方法添加若干新元素

<script>
function appendText(){
	var txt1="<p>文本。</p>";              // 使用 HTML 標籤創建文本
	var txt2=$("<p></p>").text("文本。");  // 使用 jQuery 創建文本
	var txt3=document.createElement("p");
	txt3.innerHTML="文本。";               // 使用 DOM 創建文本 text with DOM
	$("body").append(txt1,txt2,txt3);        // 追加新元素
}
</script>
<body>

<p>這是一個段落。</p>
<button onclick="appendText()">追加文本</button>

</body>

after() 和 before() 方法
after() 和 before() 方法能夠通過參數接收無限數量的新元素。
可以通過 text/HTML、jQuery 或者 JavaScript/DOM 來創建新元素。

刪除元素

如需刪除元素和內容,一般可使用以下兩個 jQuery 方法:

  • remove() - 刪除被選元素(及其子元素)
  • empty() - 從被選元素中刪除子元素

獲取並設置css類

  • addClass() - 向被選元素添加一個或多個類

  • removeClass() - 從被選元素刪除一個或多個類

  • toggleClass() - 對被選元素進行添加/刪除類的切換操作

  • css() - 設置或返回樣式屬性

css()方法

css() 方法設置或返回被選元素的一個或多個樣式屬性

返回 CSS 屬性

css(“propertyname”);

$("p").css("background-color");

設置 CSS 屬性

css(“propertyname”,“value”);

$("p").css("background-color","yellow");

設置多個 CSS 屬性
css({“propertyname”:“value”,“propertyname”:“value”,…});

$("p").css({"background-color":"yellow","font-size":"200%"});

jQuery尺寸

  • width() 設置或返回元素的寬度(不包括內邊距、邊框或外邊距)
  • height() 設置或返回元素的高度(不包括內邊距、邊框或外邊距)
  • innerWidth() 返回元素的寬度(包括內邊距)
  • innerHeight() 返回元素的高度(包括內邊距)
  • outerWidth() 返回元素的寬度(包括內邊距和邊框)
  • outerHeight() 返回元素的高度(包括內邊距和邊框)

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章