คำถามติดแท็ก javascript

สำหรับคำถามเกี่ยวกับการเขียนโปรแกรมใน ECMAScript (JavaScript / JS) และภาษา / การใช้งานต่างๆ (ไม่รวม ActionScript) แท็กนี้ไม่ค่อยได้ใช้คนเดียว แต่ส่วนใหญ่มักจะเกี่ยวข้องกับแท็ก [node.js], [jquery], [json] และ [html]

9
C # String. เทียบเท่า Javascript ที่ว่างเปล่า
ฉันต้องการลองทำการโทรแบบสตริงที่เทียบเท่ากับ C # String.IsNullOrEmpty(string)ในจาวาสคริปต์ ฉันดูออนไลน์โดยสมมติว่ามีสายเรียกเข้าง่ายๆ แต่หาไม่พบ ตอนนี้ฉันกำลังใช้if(string === "" || string === null)คำสั่งเพื่อปกปิดมัน แต่ฉันอยากจะใช้วิธีที่กำหนดไว้ล่วงหน้า (ฉันได้รับอินสแตนซ์บางอย่างที่ลื่นไหลด้วยเหตุผลบางประการ) จาวาสคริปต์ที่ใกล้เคียงที่สุดคืออะไร (หรือ jquery ถ้ามี) เรียกว่าจะเท่ากัน?

18
ฉันจะปิดหน้าต่างเบราว์เซอร์โดยไม่ได้รับข้อความแจ้ง“ คุณต้องการปิดหน้าต่างนี้” ได้อย่างไร
ฉันจะปิดหน้าต่างเบราว์เซอร์โดยไม่ได้รับข้อความDo you want to close this window prompt? พร้อมท์เกิดขึ้นเมื่อฉันใช้window.close();ฟังก์ชัน

7
วิธีเรียกใช้ฟังก์ชัน JavaScript แทน href ใน HTML
ฉันมีตัวอย่างใน HTML <a href="javascript:ShowOld(2367,146986,2)"><img title="next page" alt="next page" src="/themes/me/img/arrn.png"></a> ฉันได้รับการตอบกลับจากเซิร์ฟเวอร์เมื่อฉันส่งคำขอ ด้วยการจำลองนี้ฉันได้รับคำตอบของคำขอ AJAX ที่ส่งรหัสของฉันไปยังเซิร์ฟเวอร์ ทุกอย่างเรียบร้อยดี แต่เมื่อฉันคลิกที่ลิงค์เบราว์เซอร์ต้องการเปิดฟังก์ชันเป็นลิงค์ ความหมายหลังจากคลิกฉันเห็นแถบที่อยู่เป็น javascript:ShowOld(2367,146986,2) หมายถึงเบราว์เซอร์ที่เป็น url ถ้าฉันต้องการทำสิ่งนี้ใน firebug ที่ใช้งานได้ ตอนนี้ฉันต้องการทำเช่นนั้นเมื่อทุกคนคลิกลิงก์เบราว์เซอร์จะพยายามเรียกใช้ฟังก์ชันที่โหลดไว้แล้วใน DOM แทนที่จะพยายามเปิดในเบราว์เซอร์

4
HTML anchor tag กับ Javascript onclick event
ในการใช้ Google ฉันพบว่าพวกเขาใช้เหตุการณ์ onclick ในแท็กจุดยึด ในตัวเลือกเพิ่มเติมในส่วนหัวของ Google ดูเหมือนแท็กปกติ แต่เมื่อคลิกจะไม่ได้รับการเปลี่ยนเส้นทาง แต่เปิดเมนู โดยปกติเมื่อใช้ <a href='more.php' onclick='show_more_menu()'>More >>></a> มันมักจะไปที่ 'more.php' โดยไม่เริ่มshow_more_menu()ทำงาน แต่ฉันได้แสดงเมนูในหน้านั้นเอง จะทำเหมือนgoogle ได้อย่างไร?

6
jQuery ค้นหาและแทนที่สตริง
ฉันมีข้อความเฉพาะในเว็บไซต์สมมติว่า "lollypops" และฉันต้องการแทนที่สตริงนี้ทั้งหมดด้วย "marshmellows" ปัญหาคือไม่รู้ว่าข้อความอยู่ตรงไหน ฉันรู้ว่าฉันสามารถทำสิ่งต่างๆเช่น: $(body).html($(body).html().replace('lollypops', 'marshmellows')); สิ่งนี้อาจใช้ได้ แต่ฉันต้องเขียน HTML ใหม่ให้น้อยที่สุดเท่าที่จะทำได้ดังนั้นฉันคิดว่า: ค้นหาสตริง ค้นหาองค์ประกอบหลักที่ใกล้เคียงที่สุด เขียนเฉพาะองค์ประกอบหลักที่ใกล้เคียงที่สุด แทนที่สิ่งนี้แม้ในแอตทริบิวต์ แต่ไม่ใช่ทั้งหมดเช่นแทนที่ในclassแต่ไม่ใช่ในsrc ตัวอย่างเช่นฉันจะมีโครงสร้างแบบนี้ <body> <div> <div> <p> <h1> <a>lollypops</a> </h1> </p> <span>lollypops</span> </div> </div> <p> <span class="lollypops">Hello, World!</span> <img src="/lollypops.jpg" alt="Cool image" /> </p> <body> ในตัวอย่างนี้ทุกครั้งที่เกิด "lollypops" จะถูกแทนที่โดย<img src="...จะยังคงเหมือนเดิมและองค์ประกอบเดียวที่จะถูกปรับแต่งจริงจะเป็น<a>และทั้งสอง<span>อย่าง มีใครรู้วิธีทำบ้างไหม?

6
เครื่องหมายดอลลาร์ใน Javascript คืออะไรถ้าไม่ใช่ jQuery
ฉันเขียนโปรแกรม javascript / jQuery เมื่อสองสามปีก่อนและฉันเพิ่งเริ่มต้นอีกครั้ง ในตอนนั้นเครื่องหมายดอลลาร์ถูกใช้สำหรับฟังก์ชัน jQuery ทั้งหมดและหากไม่มีการนำเข้าไลบรารี jQuery จะไม่มีการกำหนดเครื่องหมายดอลลาร์ วันนี้ฉันเริ่ม Firefox ในไฟล์ html ที่ว่างเปล่าโดยไม่มีไลบรารี javascript แต่เครื่องหมายดอลลาร์ชี้ไปที่บางสิ่ง ถ้าผมเปิด Firefox คอนโซลและประเภท'$'"function()"ฉันได้รับ 1) ถูกต้องหรือไม่ที่ไม่ได้กำหนดเครื่องหมายดอลลาร์ย้อนหลังไปสองสามปีหรือฉันจำผิด? 2) เครื่องหมายดอลลาร์คืออะไรถ้าไม่ใช่ jQuery?

6
จะเรียกใช้การโทรกลับหลังจากอัปเดตสถานะใน Redux ได้อย่างไร
setState(state, callback)ในการตอบสนองของรัฐไม่ได้มีการปรับปรุงทันทีดังนั้นเราจึงสามารถใช้โทรกลับใน แต่จะทำอย่างไรใน Redux? หลังจากโทรไปthis.props.dispatch(updateState(key, value))ฉันต้องทำอะไรบางอย่างกับสถานะที่อัปเดตทันที มีวิธีใดบ้างที่ฉันสามารถโทรกลับด้วยสถานะล่าสุดเหมือนกับสิ่งที่ฉันทำใน React

7
ฉันสามารถใช้ webpack เพื่อสร้าง CSS และ JS แยกกันได้หรือไม่
ฉันมี: ไฟล์ JS ที่ฉันต้องการรวมไฟล์ LESS ไฟล์ที่ฉันต้องการรวบรวมลงใน CSS (แก้ไข @imports เป็นบันเดิลเดียว) ฉันหวังว่าจะระบุสิ่งเหล่านี้เป็นอินพุตแยกกันสองตัวและมีเอาต์พุตแยกกันสองตัว (น่าจะเป็นผ่าน extract-text-webpack-plugin) Webpack มีปลั๊กอิน / ตัวโหลดที่เหมาะสมทั้งหมดในการคอมไพล์ แต่ดูเหมือนจะไม่ชอบการแยก ฉันเคยเห็นตัวอย่างของผู้ที่ต้องการไฟล์ LESS โดยตรงจาก JS เช่นrequire('./app.less');ไม่มีเหตุผลอื่นใดนอกจากบอกให้ webpack รวมไฟล์เหล่านั้นลงในบันเดิล สิ่งนี้ช่วยให้คุณมีจุดเข้าเพียงจุดเดียว แต่ดูเหมือนว่าฉันผิดจริงๆ - ทำไมฉันต้องใช้ LESS ใน JS ของฉันในเมื่อมันไม่เกี่ยวข้องกับรหัส JS ของฉัน ฉันลองใช้จุดเข้าหลายจุดส่งทั้ง JS รายการและไฟล์ LESS หลักเข้ามา แต่เมื่อใช้จุดเข้าหลายจุด webpack จะสร้างบันเดิลที่ไม่เรียกใช้ JS เมื่อโหลด - มันรวมเข้าด้วยกันทั้งหมด แต่ไม่รู้ สิ่งที่ควรดำเนินการเมื่อเริ่มต้น ฉันใช้ …

9
ประสิทธิภาพรายการใหญ่พร้อม React
ฉันอยู่ในขั้นตอนการใช้รายการที่กรองได้ด้วย React โครงสร้างของรายการดังที่แสดงในภาพด้านล่าง พรีเมี่ยม นี่คือคำอธิบายวิธีการทำงาน: สถานะอยู่ในองค์ประกอบระดับสูงสุดคือSearchองค์ประกอบ รัฐอธิบายดังนี้: { มองเห็นได้: บูลีน ไฟล์: อาร์เรย์ กรอง: อาร์เรย์ แบบสอบถาม: สตริง, currentSelectedIndex: จำนวนเต็ม } files เป็นอาร์เรย์ที่มีพา ธ ไฟล์ที่มีขนาดใหญ่มาก (10,000 รายการเป็นจำนวนที่น่าเชื่อถือ) filteredคืออาร์เรย์ที่กรองหลังจากผู้ใช้พิมพ์อย่างน้อย 2 อักขระ ฉันรู้ว่ามันเป็นข้อมูลอนุพันธ์และด้วยเหตุนี้จึงสามารถโต้แย้งเกี่ยวกับการจัดเก็บข้อมูลในสถานะได้ แต่จำเป็นสำหรับ currentlySelectedIndex ซึ่งเป็นดัชนีขององค์ประกอบที่เลือกในปัจจุบันจากรายการที่กรองแล้ว ผู้ใช้พิมพ์ตัวอักษรมากกว่า 2 ตัวลงในInputส่วนประกอบอาร์เรย์จะถูกกรองและสำหรับแต่ละรายการในอาร์เรย์ที่กรองResultองค์ประกอบจะถูกแสดงผล แต่ละResultองค์ประกอบจะแสดงเส้นทางแบบเต็มที่ตรงกับคำค้นหาบางส่วนและส่วนที่ตรงกันบางส่วนของเส้นทางจะถูกเน้น ตัวอย่างเช่น DOM ของคอมโพเนนต์ผลลัพธ์หากผู้ใช้พิมพ์ 'le' จะเป็นดังนี้: <li>this/is/a/fi<strong>le</strong>/path</li> หากผู้ใช้กดปุ่มขึ้นหรือลงในขณะที่Inputคอมโพเนนต์เน้นการcurrentlySelectedIndexเปลี่ยนแปลงตามfilteredอาร์เรย์ ทำให้Resultองค์ประกอบที่ตรงกับดัชนีถูกทำเครื่องหมายว่าเลือกไว้ทำให้เกิดการแสดงผลซ้ำ ปัญหา ตอนแรกฉันทดสอบสิ่งนี้ด้วยอาร์เรย์ที่เล็กพอfilesโดยใช้ React เวอร์ชันพัฒนาและทุกอย่างทำงานได้ดี ปัญหาเกิดขึ้นเมื่อฉันต้องจัดการกับfilesอาร์เรย์ที่ใหญ่ถึง 10,000 …

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

17
แปลง Hex เป็น RGBA
ซอของฉัน - http://jsbin.com/pitu/1/edit ฉันต้องการลองแปลง hex เป็น rgba อย่างง่าย ฉันเคยใช้เบราว์เซอร์ที่ใช้แสดงสีโดยใช้ rgb เป็นค่าเริ่มต้นดังนั้นเมื่อใช้ตัวเลือกสี farbtastic ฉันจะแปลงค่าฐานสิบหกเป็น rgb โดยการจับสีพื้นหลังค่าฐานสิบหกที่สร้างขึ้น (เป็น rgb โดยค่าเริ่มต้น = การแปลงอย่างง่าย) ฉันพยายามเปลี่ยน)สัญลักษณ์เป็น, 1)แต่ไม่ได้ผลดังนั้นฉันจึงไปดูว่าการแปลง rgb เป็น rgba จะทำงานอย่างไรและฉันยังคงประสบปัญหาอยู่ jquery $('.torgb').val($('#color').css('background-color')); $('.torgba').val().replace(/rgb/g,"rgba"); เป้าหมาย แก้ไข : TinyColorเป็นไลบรารี js การจัดการสีที่ยอดเยี่ยมที่ทำทุกอย่างที่ฉันต้องการที่นี่และอื่น ๆ ฉันคิดว่าพวกคุณอาจต้องการลองดู! - https://github.com/bgrins/TinyColor

30
หมุนองค์ประกอบในอาร์เรย์ใน JavaScript
ฉันสงสัยว่าวิธีใดเป็นวิธีที่มีประสิทธิภาพที่สุดในการหมุนอาร์เรย์ JavaScript ฉันคิดวิธีแก้ปัญหานี้โดยที่ค่าบวกnหมุนอาร์เรย์ไปทางขวาและค่าลบnไปทางซ้าย ( -length < n < length): Array.prototype.rotateRight = function( n ) { this.unshift( this.splice( n, this.length ) ); } ซึ่งสามารถใช้วิธีนี้: var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]; months.rotate( new Date().getMonth() ); เวอร์ชันดั้งเดิมของฉันด้านบนมีข้อบกพร่องดังที่คริสตอฟชี้ให้เห็นในความคิดเห็นต่อไปเวอร์ชันที่ถูกต้องคือ (การส่งคืนเพิ่มเติมอนุญาตให้ผูกมัด) Array.prototype.rotateRight = function( n ) { …

3
console.log เพื่อ stdout เกี่ยวกับเหตุการณ์อึก
ฉันต้องการเข้าสู่ stdout (สภาพแวดล้อมการกำหนดค่า) เมื่องานอึกกำลังทำงานอยู่หรือมีการรัน สิ่งนี้: gulp.task('scripts', function () { var enviroment = argv.env || 'development'; var config = gulp.src('config/' + enviroment + '.json') .pipe(ngConstant({name: 'app.config'})); var scripts = gulp.src('js/*'); return es.merge(config, scripts) .pipe(concat('app.js')) .pipe(gulp.dest('app/dist')) .on('success', function() { console.log('Configured environment: ' + environment); }); }); ฉันไม่แน่ใจว่าควรตอบกลับเหตุการณ์ใดหรือจะหารายการสิ่งเหล่านี้ได้ที่ไหน คำแนะนำใด ๆ ขอบคุณมาก.

6
วิธีรับวันที่จาก jQuery UI datepicker
ฉันต้องการรับวันที่จาก datepicker เมื่อใดก็ตามที่ผู้ใช้เลือกวันที่ใน jQuery UI datepicker แล้วคลิกปุ่มบนแบบฟอร์ม ฉันต้องได้วันเดือนและปีของวันที่พวกเขาเลือก ฉันจะรับรูปแบบวันที่ jQuery UI ได้อย่างไร

6
Jquery: วิธีตรวจสอบว่าองค์ประกอบมีคลาส / สไตล์ css ที่แน่นอนหรือไม่
ฉันมี div: <div class="test" id="someElement" style="position: absolute"></div> มีวิธีตรวจสอบองค์ประกอบบางอย่างหรือไม่: $("#someElement") มีคลาสเฉพาะ (ในกรณีของฉันคือ "test") อีกวิธีหนึ่งมีวิธีตรวจสอบว่า en element มีลักษณะที่แน่นอนหรือไม่? ในตัวอย่างนี้ฉันต้องการทราบว่าองค์ประกอบมี " position: absolute" หรือไม่ ขอบคุณมาก!
86 javascript  jquery  css 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.