รายการวิธีการ CSS ที่ควบคุมโดย jquery บล็อกอิสระอีกอันหนึ่ง การเปลี่ยนแปลงคุณสมบัติส่วนบุคคล

เป็นเวลานานแล้วที่ฉันมีบทความเกี่ยวกับ JQuery ในบล็อกของฉัน ไม่ แน่นอนว่ามีบทความต่างๆ ที่ใช้มันอยู่ แต่มันทำหน้าที่เป็นเครื่องมือเสริม และในระหว่างนี้ ส่วน “การเรียนรู้ JQuery” ก็เต็มไปด้วยฝุ่น ในขณะเดียวกันก็ถึงเวลาที่จะก้าวไปสู่ส่วนที่น่าสนใจที่สุดของการฝึกอบรม - การเพิ่มเอฟเฟกต์ต่าง ๆ ซึ่งเป็นเหตุผลว่าทำไมหลายคนถึงเริ่มศึกษามัน และในบทความวันนี้ คุณจะได้เรียนรู้วิธีเปลี่ยนคุณสมบัติ CSS ได้ทันที

ก่อนที่เราจะพูดถึงเอฟเฟกต์นั้น เรามาสำรองข้อมูลเล็กน้อยและดูที่ CSS กันก่อน ในบทความก่อนหน้านี้ เราได้เปลี่ยนรูปลักษณ์ของหน้าโดยการเพิ่มหรือลบคลาส CSS ต่างๆ ซึ่งแน่นอนว่าจะต้องสร้างในไฟล์ CSS ก่อน โดยทั่วไปนี่เป็นวิธีที่ถูกต้องเนื่องจากคำนึงถึงบทบาทของ CSS ในการสร้างเพจ

อย่างไรก็ตาม มีบางครั้งที่คุณต้องเปลี่ยนสไตล์ CSS ที่ไม่ได้อยู่ในสไตล์ชีตหรือที่ไม่สามารถอธิบายได้ ในกรณีดังกล่าว JQuery มีเมธอด .css()

เพื่อที่จะรับค่าของคุณสมบัติ CSS เราต้องส่งชื่อคุณสมบัติเป็นสตริง อะไรทำนองนี้ css('สีพื้นหลัง') .

คุณสมบัติที่ประกอบด้วยคำหลายคำสามารถเขียนด้วยยติภังค์ได้ เช่น ในไฟล์ CSS (สีพื้นหลัง) หรือตัวพิมพ์ต่าง ๆ ตามที่เขียนใน DOM (สีพื้นหลัง) ในการตั้งค่าคุณสมบัติ CSS นั้น .css() วิธีการใช้สองวิธี วิธีแรกคือพารามิเตอร์สองตัว ชื่อของคุณสมบัติ CSS และค่า โดยคั่นด้วยเครื่องหมายจุลภาค ประการที่สองคือแผนที่ที่ประกอบด้วยคู่มูลค่าทรัพย์สิน

Css("คุณสมบัติ","ค่า") .css((property1: "value1", "property-2": "value2"))

เราจะใช้วิธีการ css() เช่นเดียวกับที่เราใช้ .addClass() - เรารวมมันเข้ากับตัวเลือกและผูกเหตุการณ์ ลองดูที่วิธีการ .css() โดยใช้ตัวอย่างที่เฉพาะเจาะจง เราจะต้องมีมาร์กอัป HTML ต่อไปนี้:

คอลเลกชันบนแท็บแทรกมีองค์ประกอบที่กำหนดลักษณะโดยรวมของเอกสารของคุณ คอลเลกชันเหล่านี้ใช้เพื่อแทรกตาราง ส่วนหัว ส่วนท้าย รายการ ใบปะหน้า และแบบเอกสารสำเร็จรูปอื่นๆ ลงในเอกสาร เมื่อคุณสร้างรูปภาพ ไดอะแกรม หรือไดอะแกรม จะสอดคล้องกับลักษณะที่ปรากฏของเอกสารปัจจุบัน

และ CSS บางส่วน:

#กล่องข้อความ ( เส้นขอบ: 1px solid #000; พื้นหลัง: #DFECFF; ระยะขอบ: 20px อัตโนมัติ; การจัดตำแหน่งข้อความ: ซ้าย; การขยาย: 10px; ความกว้าง: 400px; สี: #0000a0; รูปแบบแบบอักษร: ตัวเอียง; ชัดเจน: ทั้งสอง; )

ด้วยเหตุนี้เราจะได้หน้าดังนี้:

มีสองปุ่มบนหน้า - เพื่อเพิ่มและลดแบบอักษร โดยหลักการแล้ว ที่นี่เราสามารถใช้เมธอด .addClass() ที่อธิบายไว้ในบทความที่แล้ว แต่มาทำให้งานซับซ้อนขึ้นอีกหน่อย และลองจินตนาการว่าเราจำเป็นต้องลดหรือเพิ่มข้อความทุกครั้งที่กดปุ่มที่เกี่ยวข้อง แน่นอนว่าสิ่งนี้สามารถนำไปใช้ได้โดยการอธิบายคลาสแยกต่างหากสำหรับการคลิกแต่ละครั้ง แต่จะง่ายกว่ามากในการรับขนาดข้อความปัจจุบันและเพิ่ม (ลด) ตามค่าที่กำหนด

โค้ดของเรามักจะเริ่มต้นด้วย $(document).ready() และตัวจัดการเหตุการณ์ของปุ่ม $("#increase").click() :

$(document).ready(function())( $("#increase").click(function())( ));

จากนั้น คุณสามารถรับขนาดตัวอักษรได้อย่างง่ายดายผ่าน $(“#textbox”).css("fontSize") อย่างไรก็ตาม ค่าที่ส่งคืนจะมีทั้งตัวเลขและหน่วย ดังนั้นเราจำเป็นต้องจัดเก็บแต่ละส่วนไว้ในตัวแปรของตัวเอง หลังจากนั้นเราจะเพิ่มตัวเลขและแนบหน่วยกลับเข้าไปใหม่ได้ นอกจากนี้ เราวางแผนที่จะใช้วัตถุ JQuery มากกว่าหนึ่งครั้ง ดังนั้นจึงเป็นความคิดที่ดีที่จะเก็บไว้ในตัวแปรเช่นกัน

$(document).ready(function() ( $("#increase").click(function() ( var $speech = $("div.speech"); var currentSize = $speech.css("fontSize") ; var num = parseFloat(ขนาดปัจจุบัน, 10); var unit = currentSize.slice(-2); $speech.css("fontSize", num + หน่วย ));

บรรทัดแรกภายในฟังก์ชัน .click() จะจัดเก็บตัวแปรพร้อมกับบล็อก #textblock

โปรดทราบว่าเราใช้สัญลักษณ์ $ ในชื่อตัวแปร $speech เนื่องจาก $ เป็นอักขระที่ถูกต้องสำหรับตัวแปร JavaScript เราจึงสามารถใช้เป็นเครื่องเตือนใจว่าตัวแปรนี้เก็บวัตถุ JQuery บรรทัดถัดไปจะบันทึกขนาดแบบอักษรของบล็อก #textblock ลงในตัวแปร เช่น 12px

หลังจากนั้นเราใช้ parseFloat() และ Slice() ฟังก์ชัน parseFloat() ใช้ในการแปลงค่าสตริงให้เป็นค่าตัวเลข (ทศนิยม) ตัวอย่างเช่น สตริง 12 จะถูกแปลงเป็นตัวเลข 12 หากสตริงขึ้นต้นด้วยอักขระที่ไม่ใช่ตัวเลข parseFloat() จะส่งกลับ NaN ซึ่งหมายความว่า: "ไม่ใช่ค่าตัวเลข" ( ไม่ใช่ตัวเลข).อาร์กิวเมนต์ที่สองของฟังก์ชัน parseFloat() ทำให้แน่ใจว่าตัวเลขจะถูกแปลงเป็นค่าทศนิยม

.sice() วิธีการส่งกลับสตริงย่อยเริ่มต้นที่อักขระเฉพาะในสตริง เนื่องจากชื่อของหน่วยที่เราใช้มีความยาวอักขระสองตัว (px) เราจึงระบุว่าสตริงย่อยต้องขึ้นต้นด้วยอักขระสองตัวสุดท้ายของสตริงหลัก

สิ่งที่เราต้องทำคือคูณค่าผลลัพธ์ของตัวแปร num ด้วย 1.4 จากนั้นตั้งค่าขนาดตัวอักษรโดยเชื่อมตัวแปรสองตัว num และหน่วยเข้าด้วยกัน:

$(document).ready(function())( $("#increase").click(function())( var $speech = $("#textbox"); var currentSize = $speech.css("fontSize" var num = parseFloat(ขนาดปัจจุบัน, 10); var unit = currentSize.slice(-2); $speech.css("fontSize", num + หน่วย ));

ตอนนี้หลังจากคลิกที่ปุ่ม "ขยาย" ข้อความในบล็อกจะเพิ่มขึ้นดังที่แสดงในภาพหน้าจอ:

การคลิกปุ่มเดิมครั้งถัดไปจะยังคงเพิ่มข้อความในบล็อก

เพื่อให้ปุ่ม "ลด" ทำงานได้ เราจะแบ่งค่าของตัวแปร – num/=1.4 และเพื่อไม่ให้เพิ่มขนาดโค้ด เราสามารถรวมตัวจัดการเหตุการณ์ .click() สองตัวเข้าด้วยกันเป็นอันเดียวผ่านคลาสปุ่ม จากนั้นหลังจากตั้งค่าตัวแปรแล้ว เราก็สามารถคูณหรือหารตาม ID ของปุ่มที่กดได้อย่างง่ายดาย นี่คือลักษณะของโค้ดที่ควรจะเป็น:

$(document).ready(function())( $("input").click(function())( var $speech = $("#textbox"); var currentSize = $speech.css("fontSize") ; var num = parseFloat(currentSize, 10); var unit = currentSize.slice(-2); if (this.id=="increase")( num*=1.4; ) อื่น ๆ ถ้า(this.id=="ลดลง ") ( num/=1.4; ) $speech.css("fontSize", num + หน่วย ));

ข้างต้นเป็นตัวอย่างที่ง่ายที่สุดของการใช้เมธอด .css() ในทางปฏิบัติ สามารถยกตัวอย่างการใช้วิธีนี้ได้อีกตัวอย่างหนึ่ง

แยกรายการเมนู

บ่อยครั้งในการออกแบบมีเทคนิคเช่นการแบ่งรายการเมนูด้วยเส้นแนวตั้งและรายการเมนูแรกและรายการสุดท้ายไม่ควรมีเส้นข้าง

เมนูดังกล่าวจะต้องมีมาร์กอัป HTML ต่อไปนี้:

Ul( list-style: none; ) ul li( list-style: none; float: left; พื้นหลัง: #DFECFF; display: block; padding: 10px; border-right: 1px grey solid; ) ul li a( text- ตกแต่ง: ไม่มี; สี: #000;

เมนูของเราจะเป็นดังนี้:

และเพื่อลบตัวคั่นที่ถูกต้องออกจากรายการเมนูสุดท้าย (รายการที่สี่) คุณสามารถใช้รหัสนี้:

$(document).ready(function())( $("#menu ul li:last").css("border-right", "none"); ));

และด้วยเหตุนี้เราจึงได้เมนูนี้:

อย่างที่คุณเห็นการใช้วิธีนี้ค่อนข้างง่ายและสะดวก แต่ก็ยังพยายามอย่าใช้ในทางที่ผิด แต่ใช้เฉพาะในกรณีที่ไม่สามารถเพิ่มสไตล์ที่ต้องการลงในไฟล์ CSS ได้

ลองดูการเพิ่มคุณสมบัติโดยใช้ตัวอย่างบางส่วน ซีเอสเอสไปยังหน้าเว็บไซต์โดยใช้ jQuery- มาดูข้อดีข้อเสียของสองวิธีหลักในการเปลี่ยนสไตล์บนเพจกัน

หากต้องการเปลี่ยนการตั้งค่าเนื้อหาของหน้าโดยใช้ไลบรารี jQuery จาวาสคริปต์คุณสามารถใช้สองวิธี:

1. การเปลี่ยนแปลงคุณสมบัติส่วนบุคคล

มาเปลี่ยนองค์ประกอบด้วยคุณสมบัติกัน คลาสหนึ่งและ .คลาสสองเมื่อวางเมาส์เหนือองค์ประกอบที่มีคลาส .เว็บไซต์.

$(".ไซต์"). เมาส์โอเวอร์(ฟังก์ชั่น()(

$(".class-one, .class-two") . css ("ความกว้าง" , "30%" ) ;

$(".class-one, .class-two") . css("ความสูง", "240px");

} ) ;

การเปลี่ยนชั้นเรียน

วิธีนี้เป็นวิธีที่ดีกว่าและสะดวกกว่าหากคุณต้องการเปลี่ยนคุณสมบัติต่างๆ มากมายโดยใช้ jQuery หากคุณสมบัติทั้งหมดนี้เขียนอยู่ใน ไฟล์ .jsจากนั้นคุณจะสามารถทำให้การอ่านและความเข้าใจโค้ดทั้งหมดซับซ้อนขึ้นได้อย่างมาก เป็นการดีกว่าถ้าเขียนสไตล์ทั้งหมดในไฟล์ CSS และใช้ jQuery เพื่อเปลี่ยนแปลง

เมื่อมีเหตุการณ์เกิดขึ้นเราจะเปลี่ยนรูปแบบ .คลาส-หนึ่งในรูปแบบ .คลาสหนึ่ง .คลาสสอง:

$(".ไซต์"). บน ("mouseover mousemove" , ฟังก์ชั่น () (

$(".คลาสหนึ่ง"). ลบคลาส() addClass("คลาสหนึ่งคลาสสอง");

} ) ;

หากคุณดูโค้ดด้านบนอย่างละเอียด คุณอาจสงสัยว่าทำไมเราจึงลบคลาสออก คลาสหนึ่งแล้วเราก็คืนมันพร้อมกับอีกอัน

นี่เป็นสิ่งจำเป็นเนื่องจากมีการตัดสินใจในรหัสนี้ .คลาส-หนึ่งใช้เป็น "ทางลัด" เพื่อให้ในอนาคตคุณสามารถประมวลผลองค์ประกอบนี้ได้โดยไม่ต้องจดจำว่ามีคลาสใหม่อะไรบ้าง

ส่งคืนหรือเปลี่ยนแปลงค่า CSS ขององค์ประกอบของหน้าที่เลือก ฟังก์ชั่นนี้มีการใช้งานสี่อย่าง:

ส่งกลับค่า CSS สไตล์ชื่อที่องค์ประกอบที่เลือก หากเลือกหลายองค์ประกอบ ค่าจะถูกนำมาจากองค์ประกอบแรก

CSS-ค่า สไตล์ชื่อจะได้รับการกำหนดค่า ค่าสำหรับองค์ประกอบที่เลือกทั้งหมด

กลุ่มของค่า CSS styleName1, styleName2, ...จะได้รับการกำหนดค่า ค่า1, ค่า2, ...สำหรับองค์ประกอบที่เลือกทั้งหมด

CSS-ค่า สไตล์ชื่อจะได้รับการกำหนดค่าที่ส่งคืนโดยฟังก์ชันที่ผู้ใช้กำหนด ฟังก์ชันนี้ถูกเรียกแยกกันสำหรับแต่ละองค์ประกอบที่เลือก เมื่อเรียก พารามิเตอร์ต่อไปนี้จะถูกส่งไป: ดัชนี— ตำแหน่งขององค์ประกอบในชุด ค่า— ค่าปัจจุบันของค่า CSS สไตล์ชื่อที่องค์ประกอบ

ตัวอย่างการใช้งาน:

ความคิดเห็น: สิ่งสำคัญที่ควรทราบคือการใช้เมธอด .css(styleName) คุณจะได้รับเฉพาะค่า css ขององค์ประกอบแรกจากองค์ประกอบที่เลือกทั้งหมด หากคุณต้องการค่าขององค์ประกอบทั้งหมด คุณควรใช้โครงสร้างเช่น .map() หรือ .each()

ในการดำเนินการ

เรามาค้นหาโลกบ้านเกิดของเราในรายการดาวเคราะห์และไฮไลต์เป็นสีเขียว:

~lt~!DOCTYPE html~gt~ ~lt~html~gt~ ~lt~head~gt~ ~lt~script src="http://code.jquery.com/jquery-latest.js"~gt~~ lt~/script~gt~ ~lt~style~gt~ #list( width:260px; ) .item( width: 250px; height: 20px; float: left; margin: 1px; padding: 3px; สีพื้นหลัง: # EEEEEE; list-style-type:none; ) ~lt~/style~gt~ ~lt~/head~gt~ ~lt~body~gt~ ~lt~ul id = "รายการ"~gt~ ~lt~li class="item"~gt~Mercury~lt~/li ~gt~ ~lt~li class="item"~gt~Venus~lt~/li ~gt~ ~lt~li class="item"~gt~ Earth~lt~/li ~gt~ ~lt~li class="item"~gt~Mars~lt~/li ~gt~ ~lt~li class="item"~gt~Jupiter~lt~/li ~gt ~ ~lt~li class="item"~gt~Satrurn~lt~/li ~gt~ ~lt~li class="item"~gt~Uranus~lt~/li ~gt~ ~lt~li class=" รายการ"~gt~ดาวเนปจูน~lt~/li ~gt~ ~lt~li class="item"~gt~Pluto~lt~/li ~gt~ ~lt~/ul~gt~ ~lt~script~gt~ $("#list .item").css("พื้นหลัง-สี", function(i,val)( if($(this).text() == "Ground") return "#cceecc"; else return val ; )); ~lt~/script~gt~ ~lt~/body~gt~ ~lt~/html~gt~

บันทึกหน้านี้เพื่อทดสอบตัวอย่างด้านล่าง

ไลบรารี jQuery มีวิธีการพิเศษที่สะดวกสบายมากมาย ซึ่งทำให้การทำงานกับสไตล์ CSS ง่ายขึ้นมาก หนึ่งในวิธีการที่ใช้กันอย่างแพร่หลายประเภทนี้คือ วิธีการใช้ CSS()ซึ่งมีคำอธิบายโดยย่อในตารางด้านล่าง:

เมื่อคุณอ่านค่าคุณสมบัติโดยใช้เมธอด css() คุณจะได้รับค่าคุณสมบัติที่องค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery มี ในเวลาเดียวกัน เมื่อคุณตั้งค่าคุณสมบัติ การเปลี่ยนแปลงที่คุณทำจะถูกนำไปใช้กับองค์ประกอบทั้งหมดของชุด ตัวอย่างของการใช้ CSS() วิธีการที่ง่ายที่สุดมีดังต่อไปนี้:

$(function() ( var sizeVal = $("label").css("font-size"); console.log("ขนาดตัวอักษร: " + sizeVal); $("label").css("font- ขนาด", "1.5em"); ));

ในสคริปต์นี้ เราเลือกองค์ประกอบป้ายกำกับทั้งหมด รับค่าของคุณสมบัติขนาดแบบอักษรโดยใช้เมธอด css() และพิมพ์ลงในคอนโซล จากนั้นเราเลือกองค์ประกอบป้ายกำกับทั้งหมดอีกครั้ง และกำหนดค่าใหม่ของคุณสมบัติเดียวกันให้กับองค์ประกอบทั้งหมด

แม้ว่าสคริปต์จะใช้ชื่อจริงของคุณสมบัติ (ขนาดแบบอักษร) และไม่ใช่รูปแบบที่คำนึงถึงขนาดตัวพิมพ์ เช่น แบบฟอร์มรายการที่คุณสมบัตินี้ถูกกำหนดไว้ในวัตถุ HTMLElement (คุณสมบัติ FontSize) ก็ได้รับการยอมรับอย่างถูกต้องเช่นกัน เนื่องจาก jQuery รองรับทั้งสองตัวเลือก

จากการรันสคริปต์นี้ ผลลัพธ์ต่อไปนี้จะแสดงบนคอนโซล:

การตั้งค่าคุณสมบัติเป็นสตริงว่าง ("") เทียบเท่ากับการลบคุณสมบัตินั้นออกจากแอตทริบิวต์ style ขององค์ประกอบ

การตั้งค่าคุณสมบัติ CSS หลายรายการพร้อมกัน

มีสองวิธีในการตั้งค่าคุณสมบัติ CSS หลายรายการพร้อมกัน วิธีแรกคือการสร้างสายโซ่ของการเรียกเมธอด css() ดังที่แสดงด้านล่าง:

$(function() ( $("label").css("font-size", "1.5em").css("color", "blue"); ));

สคริปต์นี้ตั้งค่าคุณสมบัติขนาดตัวอักษรและสี คุณสามารถบรรลุเอฟเฟกต์เดียวกันนี้ได้โดยใช้วัตถุแสดงผล ดังที่แสดงในตัวอย่างด้านล่าง:

$(function() ( var cssVals = ( "font-size": "1.5em", "color": "blue" ); $("label").css(cssVals); ));

ทั้งสองสถานการณ์นำไปสู่ผลลัพธ์เดียวกัน ดังแสดงในรูป:

การตั้งค่าสัมพัทธ์

เมธอด css() ยังสามารถรับค่าสัมพัทธ์เป็นอาร์กิวเมนต์ได้ด้วย เป็นค่าตัวเลขที่นำหน้าด้วยเครื่องหมาย += และ -= และบวกหรือลบออกจากค่าปัจจุบัน เทคนิคนี้สามารถใช้ได้กับค่าตัวเลขเท่านั้น ตัวอย่างที่เกี่ยวข้องได้รับด้านล่าง:

$(function() ( $("label:odd").css("font-size", "+=5") $("label:even").css("font-size", "-=5) ") ));

ค่าสัมพัทธ์จะแสดงในหน่วยเดียวกับค่าคุณสมบัติ ในกรณีนี้ ขนาดแบบอักษรจะเพิ่มขึ้น 5 พิกเซลสำหรับองค์ประกอบป้ายกำกับคี่ และลดลงด้วยจำนวนเท่ากันสำหรับองค์ประกอบป้ายกำกับคู่ ผลลัพธ์จะแสดงในรูป:

การตั้งค่าคุณสมบัติโดยใช้ฟังก์ชัน

คุณสามารถตั้งค่าคุณสมบัติแบบไดนามิกโดยส่งฟังก์ชันไปยังเมธอด css() ตัวอย่างที่เกี่ยวข้องได้รับด้านล่าง:

$(function() ( $("label").css("border", function(index, currentValue) ( ​​​​if ($(this).closest("#row1").length > 0) ( return " สีแดงทึบหนา"; ) else if (ดัชนี % 2 == 1) ( return "thick double blue"; ) )); ));

อาร์กิวเมนต์ที่ส่งผ่านไปยังฟังก์ชันคือดัชนีขององค์ประกอบในชุดและค่าปัจจุบันของคุณสมบัติ ตัวแปรนี้อ้างอิงถึงออบเจ็กต์ HTMLElement ที่สอดคล้องกับองค์ประกอบ และฟังก์ชันจะส่งกลับค่าที่จะตั้งค่า

ใช้วิธีการพิเศษในการทำงานกับคุณสมบัติ CSS

นอกเหนือจากเมธอด css() แล้ว jQuery ยังกำหนดวิธีการพิเศษอีกหลายวิธีในการรับหรือตั้งค่าของคุณสมบัติเฉพาะ รายการวิธีการเหล่านี้แสดงไว้ในตารางด้านล่าง:

วิธีการทำงานกับคุณสมบัติ CSS ที่เฉพาะเจาะจง
วิธี คำอธิบาย
ความสูง() ส่งกลับความสูง (เป็นพิกเซล) ขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery
ความสูง(ค่า) กำหนดความสูงขององค์ประกอบทั้งหมดที่มีอยู่ในวัตถุ jQuery
ความสูงภายใน() ส่งกลับความสูงที่แท้จริง (นั่นคือความสูงขององค์ประกอบ รวมถึงช่องว่างภายใน แต่ไม่รวมเส้นขอบและระยะขอบ) ขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery
ความกว้างภายใน() ส่งกลับความกว้างที่แท้จริง (นั่นคือความกว้างขององค์ประกอบ รวมถึงช่องว่างภายใน แต่ไม่รวมเส้นขอบและระยะขอบ) ขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery
ชดเชย() ส่งกลับพิกัดขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery สัมพันธ์กับจุดเริ่มต้นของเอกสาร
ความสูงด้านนอก (boolean_value) ส่งกลับความสูงขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery รวมทั้งช่องว่างภายในและเส้นขอบ อาร์กิวเมนต์กำหนดว่าควรคำนึงถึงขนาดของฟิลด์ในกรณีนี้หรือไม่
ด้านนอกกว้าง (boolean_value) รับความกว้างขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery รวมถึงช่องว่างภายในและเส้นขอบ อาร์กิวเมนต์กำหนดว่าควรคำนึงถึงขนาดของฟิลด์ในกรณีนี้หรือไม่
ตำแหน่ง() ส่งกลับพิกัดขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery สัมพันธ์กับองค์ประกอบหลักที่มีประเภทตำแหน่งที่ระบุ
scrollLeft(), scrollTop() รับค่าเลื่อนด้านซ้ายหรือด้านบนสำหรับองค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery
scrollLeft (ค่า), scrollTop (ค่า) ตั้งค่าการเลื่อนเลื่อนด้านซ้ายหรือด้านบนสำหรับองค์ประกอบทั้งหมดที่มีอยู่ในวัตถุ jQuery
ความกว้าง() รับความกว้างขององค์ประกอบแรกที่มีอยู่ในวัตถุ jQuery
ความกว้าง(ค่า) กำหนดความกว้างสำหรับองค์ประกอบทั้งหมดที่มีอยู่ในวัตถุ jQuery
ความสูง(ฟังก์ชัน) ความกว้าง(ฟังก์ชัน) ตั้งค่าความสูงหรือความกว้างขององค์ประกอบทั้งหมดที่มีอยู่ในวัตถุ jQuery โดยใช้ฟังก์ชัน

ชื่อของวิธีการเหล่านี้ส่วนใหญ่อธิบายได้ในตัว แต่บางวิธีจำเป็นต้องมีคำอธิบายเพิ่มเติม วิธีการ ชดเชย()และ ตำแหน่ง()คืนวัตถุที่มีคุณสมบัติ สูงสุดและ ซ้ายซึ่งระบุตำแหน่งขององค์ประกอบ ตัวอย่างการใช้ตำแหน่ง () วิธีการได้รับด้านล่าง


สวัสดีตอนบ่ายทุกคน วันนี้ตามที่ผมสัญญาไว้ในบทเรียน เราจะมาดูวิธีการที่ใช้ในการจัดการกัน ซีเอสเอสสไตล์โดยใช้ jQuery.

ฉันขอเตือนคุณว่าด้วยความช่วยเหลือของสไตล์ เราไม่เพียงแต่สามารถกำหนดลักษณะที่ปรากฏขององค์ประกอบบนหน้าเว็บเท่านั้น แต่ยังควบคุมตำแหน่ง แสดงและซ่อนได้ตามต้องการ เปลี่ยนขนาด และอื่นๆ อีกมากมาย พูดเชิงเปรียบเทียบคือผู้ที่เข้าถึงการจัดการสไตล์ ซีเอสเอส, เขาควบคุมหน้าเว็บเอง! ก jQueryมอบโอกาสนี้ให้กับผู้ใช้!

ใน jQueryมีวิธีการสามประเภท: บางวิธีจัดการองค์ประกอบที่เลือก, บางวิธีส่งคืนค่าองค์ประกอบ และบางวิธีแก้ไของค์ประกอบด้วยตนเอง

หากต้องการเพิ่มสไตล์ให้กับองค์ประกอบใด ๆ คุณต้องใช้วิธีการต่อไปนี้: .css(ชื่อ,ค่า)

มาเปลี่ยนรูปแบบของชื่อบทความก่อนที่เราจะไปไกลจากด้านบนของหน้ามากเกินไป ลองทำสีแดง:

.

$("#title".css("color", "#cc0000");


ในตัวอย่างนี้ ฉันเลือกองค์ประกอบที่มีรหัส รหัส = "ชื่อ"ซึ่งมีหน้าที่แสดงชื่อเว็บไซต์และรูปแบบที่เพิ่มเข้ามา เช่น สี. และปุ่มมีหน้าที่รับผิดชอบในการใช้หรือคืนรูปแบบเริ่มต้น
พารามิเตอร์สามารถเป็นชื่อและค่าที่เกี่ยวข้องได้ CSS: พื้นหลัง เส้นขอบ ลักษณะแบบอักษร สีฯลฯ

หากคุณต้องการระบุหลายรายการสำหรับองค์ประกอบหนึ่ง ซีเอสเอส-กฎ จะดีกว่าถ้าใช้โครงสร้างต่อไปนี้:

.css((คุณสมบัติ))

$("#text").css(( "color" : "blue", "fontStyle" : "italic", "font-weight" : 900 ));


คำแนะนำนี้จะเปลี่ยนสีข้อความของย่อหน้าก่อนหน้าเป็นสีน้ำเงินและตั้งค่าน้ำหนักแบบอักษรเป็น 900

โปรดทราบว่าสำหรับคุณสมบัติที่ซับซ้อน ซีเอสเอสชอบ น้ำหนักแบบอักษรและ สีพื้นหลังเทียบเท่าของพวกเขาจาก JavaScript: น้ำหนักตัวอักษร, สีพื้นหลังฯลฯ

เพื่อสาธิตวิธีการทำงานกับสไตล์อื่น ๆ ฉันจะใช้ความช่วยเหลือของสี่เหลี่ยมหลากสีซึ่งเคยให้บริการฉันมาแล้วหลายครั้งในบทเรียนเช่นและ

ฉันขอเตือนคุณถึงโค้ดและสไตล์สำหรับการสร้าง:

รหัส HTML:


สไตล์ CSS:

DivRel (ตำแหน่ง:ญาติ; ความกว้าง:600px; ความสูง:275px; เส้นขอบ:จุด 1;).ใหญ่ (ตำแหน่ง:สัมบูรณ์; ความกว้าง:200px; ความสูง:200px; ซ้าย:200px; ด้านบน:50px; สีพื้นหลัง:สีแดง; เส้นขอบ :solid 1px white; color:white; text-align:right; z-index:1;) .red (ตำแหน่ง:สัมบูรณ์; ความกว้าง:100px; ความสูง:100px; ด้านบน:50px; สีพื้นหลัง:สีแดง ; เส้นขอบ:ทึบ 1px สีขาว; text-align:right; z-index:1; .green (ตำแหน่ง: สัมบูรณ์; ความกว้าง: 100px; ซ้าย: 250px; ด้านบน: 75px; สีพื้นหลัง: สีเขียว; เส้นขอบ: ทึบ 1px สีขาว; ขวา; z-index:2;) .blue (ตำแหน่ง:สัมบูรณ์; ความกว้าง:100px; ซ้าย:300px; ด้านบน:100px; พื้นหลัง -สี:สีน้ำเงิน; เส้นขอบ:ทึบ 1px สีขาว;สี:สีขาว; z-index:3;


พิจารณาลบและกำหนดองค์ประกอบบางส่วน ซีเอสเอส-ระดับ:
.removeClass (คลาส)
.addClass(คลาส)


$("#style2").click(function())( $("#divRel1 > div:first").removeClass(); )); $("#rstyle2").click(function())( $("#divRel1 > div:first").addClass("big"); ));


คำแนะนำในการกดปุ่มเหล่านี้: "ลบชั้นเรียน"จะลบคลาสออกจากองค์ประกอบลูกแรกที่มีอยู่ในตัวระบุ id="divRel1"และเพิ่มคลาสลงไป คลาส = "ใหญ่"หลังจากคลิกปุ่ม: "เพิ่มชั้นเรียน".

วิธีการต่อไปนี้จะเพิ่มคลาสที่ระบุให้กับองค์ประกอบหากไม่มีอยู่ หรือลบคลาสนี้หากองค์ประกอบนั้นมีอยู่แล้ว:
.toggleClass(คลาส)

ลองคลิกด้วยเมาส์ภายในกรอบรอบๆ สี่เหลี่ยมสีต่างๆ สีพื้นหลังจะสลับกัน

$("#divRel1").click(function () ( $(this).toggleClass("สีเหลือง"); ));


และคุณสามารถรับ (บรรทัดแรก) และตั้งค่า (บรรทัดที่สอง) ความกว้างและความสูงขององค์ประกอบองค์ประกอบตามลำดับโดยใช้วิธีการ:
.ความกว้าง()
.ความกว้าง(ค่า)
.ความสูง()
.height(ค่า)

$("#divRel1 > div:last").toggle(function())( $ (this).width(200).height(170); ),function())( $ (this).width(100) .ความสูง (100));


รหัสที่แสดงด้านบนเลือกอันหลัง :ล่าสุดองค์ประกอบตัวระบุ id="divRel1"และใช้สวิตช์ สลับเปลี่ยนแปลงหรือเรียกคืนค่าเริ่มต้นเมื่อคุณคลิกที่สี่เหลี่ยมสีน้ำเงิน คำแนะนำเครื่องมือสไตล์มีคุณสมบัติที่กำหนดไว้: เคอร์เซอร์:ตัวชี้.

นี่เป็นคุณลักษณะที่น่าสนใจและสำคัญของวิธีการนี้ jQuery: ใช้สำหรับ การมอบหมายงานพารามิเตอร์ และสำหรับ การรับค่าของพารามิเตอร์เหล่านี้.

แต่นั่นไม่ใช่ทั้งหมด! jQueryอนุญาตให้ลบได้หากจำเป็น ซีเอสเอส-ไฟล์ที่เกี่ยวข้องกับ HTML- เพจและลิงก์อันใหม่:
$("link").attr("href", "Alternative.css");

ลองเปลี่ยนสไตล์หรือโค้ดตามดุลยพินิจของคุณ jQuery- ฉันสงสัยว่าคุณทำอะไรได้บ้าง?

วันที่: 2011-06-28

ชอบ

ความคิดเห็นในหมายเหตุ:

บทความที่ดี ทุกอย่างชัดเจน ขอบคุณ

นี่คือเหตุผลว่าทำไมเราจึงรับสมัครพนักงานที่อยู่ห่างไกลซึ่งมาทำงาน กล่าวคือ ให้ไลค์และรับค่าตอบแทน

คุณเพียงแค่ต้องลงทะเบียนในบริการของเรา > www.oplata-vklike.tk<

เราเสนองานให้คุณโดยไม่ต้องลงทุนโดยใช้ระบบรับและประมวลผลคำสั่งซื้อโดยอัตโนมัติ

เราให้บริการ:

ซอฟต์แวร์ลิขสิทธิ์ของเรา
- เอกสารพร้อมข้อมูลเพิ่มเติมที่จำเป็นทั้งหมด ข้อมูล.
- การสนับสนุนทางเทคนิคอย่างต่อเนื่อง

จ่ายตั้งแต่ 5500 ต่อวัน ชำระเงินทุกวัน

ข้อมูลรายละเอียดเพิ่มเติมบนเว็บไซต์ของเรา >> obrabotka.zarplatt.ru<<

บริการของเรามอบไลค์ภาพถ่ายให้กับลูกค้าที่ยินดีจ่ายเพื่อคุณภาพ

เพื่อเป็นพนักงานระยะไกลของเราและเริ่มชอบพร้อมรับ 45 รูเบิลต่อ 1 ไลค์

คุณเพียงแค่ต้องลงทะเบียนในบริการของเรา > http://oplata-vklike.tk/<

ถอนเงินที่ได้รับทุกวันภายในไม่กี่นาที

งานมั่นคง พร้อมอบรม เงินเดือนสูง!

คุณทำงานจากที่บ้าน! ซื่อสัตย์และโปร่งใสโดยสมบูรณ์
มีให้สำหรับทุกคน - ไม่ว่าคุณจะเป็นใครหรือมีประสบการณ์อะไรบนอินเทอร์เน็ต!
คุณจะได้รับ: มากกว่าสี่พันรูเบิลต่อวัน!
ความยาก: ง่าย!
การชำระเงิน: - ในวันถัดไปเงินจะเข้าบัญชีของคุณ!

อ่านข้อกำหนดและเงื่อนไขบนเว็บไซต์ของเรา > realno-money.tk< Скопируйте и вставьте в адресную строку Вашего браузера.

บริการของเรามอบไลค์ภาพถ่ายให้กับลูกค้าที่ยินดีจ่ายเพื่อคุณภาพ

นี่คือเหตุผลว่าทำไมเราถึงรับสมัครพนักงานที่อยู่ห่างไกลที่จะทำงาน กล่าวคือ ให้ไลค์และรับเงินจากมัน

เพื่อเป็นพนักงานระยะไกลของเราและเริ่มชอบพร้อมรับ 45 รูเบิลต่อ 1 ไลค์

คุณเพียงแค่ต้องลงทะเบียนในบริการของเรา > oplata-vklike.tk<

ถอนเงินที่ได้รับทุกวันภายในไม่กี่นาที


ทำงานผ่านอินเทอร์เน็ตโดยจ่ายเงินรายวันสูงถึง 11,000 รูเบิล



ลงทะเบียนบนเว็บไซต์ของเรา > www.airline-rabota.tk<

ฉันแนะนำ. งานที่น่าตื่นเต้นบนอินเทอร์เน็ต ไม่มีประสบการณ์ รายได้ที่มั่นใจจาก 5,000 รูเบิล ต่อวัน. ระบบนี้เป็นที่เข้าใจได้สำหรับทุกคนอย่างแน่นอน
คุณไม่จำเป็นต้องทำงานทั้งวัน! การอุทิศเวลาสองสามชั่วโมงต่อวันในการทำงานก็เพียงพอแล้ว
หยุดคิดว่าคุณไม่สามารถสร้างรายได้บนเวิลด์ไวด์เว็บ คุณสามารถสร้างรายได้บนอินเทอร์เน็ตได้!
ด้วยวิธีที่ง่ายและเข้าใจได้สำหรับทุกคน สิ่งที่สำคัญที่สุดคือการซื่อสัตย์!
คุณสามารถตั้งค่าโหมดการทำงานได้ด้วยตัวเอง
ข้อมูลรายละเอียดเพิ่มเติมอยู่ในเว็บไซต์ของเรา > http://oplata-vklike.tk< скопируйте и вставьте в адресную строку вашего браузера.

นี่คือเหตุผลว่าทำไมเราถึงรับสมัครพนักงานที่อยู่ห่างไกลที่จะทำงาน กล่าวคือ ให้ไลค์และรับเงินจากมัน

เพื่อเป็นพนักงานระยะไกลของเราและเริ่มชอบพร้อมรับ 45 รูเบิลต่อ 1 ไลค์

คุณเพียงแค่ต้องลงทะเบียนในบริการของเรา > http://oplata-vklike.tk/<

ถอนเงินที่ได้รับทุกวันภายในไม่กี่นาที

บริการพิเศษที่จะช่วยให้คุณได้รับเงินกู้จากนักลงทุนเอกชนตลอดจนสถาบันสินเชื่อ เหมาะสำหรับทั้งบริษัทและบุคคลทั่วไป

กู้ยืมจากนักลงทุนเอกชน

บริษัทของเราช่วยพบปะนักลงทุนและผู้กู้ยืม

ติดต่อโดยตรงกับนักลงทุน
ประวัติเครดิตใดๆ
สิ่งที่คุณต้องมีคือหนังสือเดินทาง
เราทำงานร่วมกับบุคคลและบริษัท
ภูมิภาคใดก็ได้
จำนวน 5,000 ถึง 50,000,000 รูเบิล
อัตราการอนุมัติ 97%

ข้อดี:

ไม่มีหลักประกันหรือการรับประกัน!
- อัตรา - เริ่มต้นเพียง 1% ต่อเดือน!
- ไม่มีค่าธรรมเนียมหรือค่าคอมมิชชั่นแอบแฝง!

ส่งใบสมัครบนเว็บไซต์ของเรา > www.ch-investor.tk<

บริการของเรามอบไลค์ภาพถ่ายให้กับลูกค้าที่ยินดีจ่ายเพื่อคุณภาพ

นี่คือเหตุผลว่าทำไมเราถึงรับสมัครพนักงานที่อยู่ห่างไกลที่จะทำงาน กล่าวคือ ให้ไลค์และรับเงินจากมัน

เพื่อเป็นพนักงานระยะไกลของเราและเริ่มชอบพร้อมรับ 45 รูเบิลต่อ 1 ไลค์

คุณเพียงแค่ต้องลงทะเบียนในบริการของเรา > http://oplata-vklike.tk/<

ถอนเงินที่ได้รับทุกวันภายในไม่กี่นาที

บริษัทชั้นนำในรัสเซียและประเทศ CIS ในการขายตั๋วเครื่องบิน

บริษัทระหว่างประเทศที่ใหญ่ที่สุดที่จำหน่ายตั๋ว A/V
กำลังรับสมัครพนักงานแบบถาวรเพื่อความเรียบง่าย
ทำงานผ่านอินเทอร์เน็ตโดยชำระเงินรายวันจาก 11,000 รูเบิล

การทำงานในบริษัทของเราคุณจะได้รับ:

การปฏิบัติตามประมวลกฎหมายแรงงาน
- สวัสดิการครบ, ลาพักร้อน, ลาป่วย, สถานพยาบาล
- พนักงานที่บ้านของเราแต่ละคนมีรายได้สูงอย่างแน่นอน ถู. ต่อวัน.
- รับประกันการจ่ายเงินที่ได้รับอย่างมั่นคง
- การชำระเงินเกิดขึ้นทุกวันผ่านบัตรธนาคารหรือกระเป๋าเงินอิเล็กทรอนิกส์

ลงทะเบียนบนเว็บไซต์ของเรา > http://airline-rabota.tk/<

ไม่ต้องลงทุน ไม่ต้องมีประสบการณ์หรือทักษะทางวิชาชีพ!