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

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

10
“! -” ทำอะไรใน JavaScript?
ฉันมีรหัสชิ้นนี้ (นำมาจากคำถามนี้ ): var walk = function(dir, done) { var results = []; fs.readdir(dir, function(err, list) { if (err) return done(err); var pending = list.length; if (!pending) return done(null, results); list.forEach(function(file) { file = path.resolve(dir, file); fs.stat(file, function(err, stat) { if (stat && stat.isDirectory()) { walk(file, function(err, res) { results …

10
การรับรองความถูกต้องเข้าสู่ระบบ AngularJS ui-router
ฉันใหม่กับ AngularJS และฉันสับสนเล็กน้อยเกี่ยวกับวิธีใช้ angular- "ui-router" ในสถานการณ์ต่อไปนี้: ฉันกำลังสร้างโปรแกรมประยุกต์บนเว็บซึ่งประกอบด้วยสองส่วน ส่วนแรกคือหน้าแรกที่มีมุมมองเข้าสู่ระบบและการลงชื่อสมัครใช้และส่วนที่สองคือแผงควบคุม (หลังจากลงชื่อเข้าใช้สำเร็จ) ฉันสร้างส่วนindex.htmlสำหรับโฮมด้วยแอพเชิงมุมและตั้งค่าui-routerเพื่อจัดการ/loginและ/signupดูและมีไฟล์อีกส่วนdashboard.htmlสำหรับแผงควบคุมพร้อมแอพและกำหนดค่าui-routerเพื่อจัดการมุมมองย่อยมากมาย ตอนนี้ฉันเสร็จส่วนแดชบอร์ดและไม่ทราบวิธีรวมสองส่วนเข้ากับแอพเชิงมุมที่ต่างกัน ฉันจะบอกแอพโฮมให้เปลี่ยนเส้นทางไปยังแอปแดชบอร์ดได้อย่างไร

23
ตรวจหา iPad Mini ใน HTML5
Apple iPad Mini เป็น iPad 2 ที่มีขนาดเล็กกว่าในแบบที่เราต้องการ ใน JavaScript window.navigatorวัตถุแสดงค่าเดียวกันสำหรับ Mini และ iPad 2 การทดสอบของฉันจนถึงการตรวจสอบความแตกต่างไม่ได้นำไปสู่ความสำเร็จ ทำไมสิ่งนี้จึงสำคัญ เนื่องจากหน้าจอ iPad Mini และ iPad 2 เหมือนกันเป็นพิกเซล แต่แตกต่างกันไปตามขนาดจริง (นิ้ว / เซนติเมตร) ดังนั้นจึงแตกต่างกันไปในPPI (พิกเซลต่อนิ้ว) เพื่อให้เว็บแอปพลิเคชันและเกมมีส่วนต่อประสานกับผู้ใช้ที่เป็นมิตรองค์ประกอบบางอย่างจะถูกปรับขนาดเทียบกับตำแหน่งนิ้วหัวแม่มือหรือนิ้วมือของผู้ใช้ดังนั้นเราอาจต้องการปรับขนาดรูปภาพหรือปุ่มบางอย่างเพื่อให้ประสบการณ์การใช้งานที่ดียิ่งขึ้น สิ่งที่ฉันได้ลองมาแล้ว (รวมถึงวิธีการที่ชัดเจนบางอย่าง): window.devicepixelratio ความกว้างองค์ประกอบ CSS หน่วยเซนติเมตร ข้อความค้นหาสื่อ CSS (เช่นresolutionและ-webkit-device-pixel-ratio) ภาพวาด SVG ในหน่วยที่คล้ายกัน การทำ CSS webkit แปลงทุกประเภทตามเวลาที่กำหนดและนับเฟรมที่แสดงผลด้วยrequestAnimFrame(ฉันหวังว่าจะตรวจสอบความแตกต่างที่วัดได้) ฉันสดจากความคิด แล้วคุณล่ะ? อัปเดต ขอบคุณสำหรับคำตอบ …
376 javascript  html  ipad  svg 

21
'console' เป็นข้อผิดพลาดที่ไม่ได้กำหนดสำหรับ Internet Explorer
ฉันใช้ Firebug และมีข้อความบางอย่างเช่น: console.log("..."); ในหน้าของฉัน ใน IE8 (อาจเป็นเวอร์ชั่นก่อนหน้านี้ด้วย) ฉันพบข้อผิดพลาดของสคริปต์ว่า 'คอนโซล' ไม่ได้กำหนดไว้ ฉันลองวางที่ด้านบนของหน้า: <script type="text/javascript"> if (!console) console = {log: function() {}}; </script> ยังฉันได้รับข้อผิดพลาด มีวิธีใดที่จะกำจัดข้อผิดพลาด?

19
ทำไมคุณต้องเรียกใช้ฟังก์ชันที่ไม่ระบุชื่อในบรรทัดเดียวกัน
ฉันอ่านบทความเกี่ยวกับการปิดและเห็นสิ่งนี้ทุกที่ แต่ไม่มีคำอธิบายที่ชัดเจนว่ามันทำงานอย่างไร - ทุกครั้งที่ฉันเพิ่งบอกให้ใช้ ... : // Create a new anonymous function, to use as a wrapper (function(){ // The variable that would, normally, be global var msg = "Thanks for visiting!"; // Binding a new function to a global object window.onunload = function(){ // Which uses the 'hidden' variable …

26
jQuery UI DatePicker เพื่อแสดงเดือนปีเท่านั้น
ฉันใช้ตัวเลือกวันที่ jQuery เพื่อแสดงปฏิทินทั่วแอพของฉัน ฉันต้องการทราบว่าฉันสามารถใช้มันเพื่อแสดงเดือนและปี (พฤษภาคม 2010) และไม่ใช่ปฏิทินหรือไม่

30
ฉันจะเปลี่ยนความกว้างเริ่มต้นของกล่อง Modal Bootstrap Twitter ได้อย่างไร
ฉันพยายามต่อไปนี้: <div class="modal hide fade modal-admin" id="testModal" style="display: none;"> <div class="modal-header"> <a data-dismiss="modal" class="close">×</a> <h3 id='dialog-heading'></h3> </div> <div class="modal-body"> <div id="dialog-data"></div> </div> <div class="modal-footer"> <a data-dismiss="modal" class="btn" >Close</a> <a class="btn btn-primary" id="btnSaveChanges">Save changes</a> </div> </div> และ Javascript นี้: $('.modal-admin').css('width', '750px'); $('.modal-admin').css('margin', '100px auto 100px auto'); $('.modal-admin').modal('show') ผลลัพธ์ไม่ใช่สิ่งที่ฉันคาดไว้ ด้านบนซ้ายเป็นกิริยาช่วยอยู่ในตำแหน่งตรงกลางของหน้าจอ ทุกคนสามารถช่วยฉันได้ มีใครลองอีกไหม …

6
jQuery การนับองค์ประกอบตามชั้นเรียน - วิธีที่ดีที่สุดในการใช้สิ่งนี้คืออะไร?
สิ่งที่ฉันพยายามทำคือการนับองค์ประกอบทั้งหมดในหน้าปัจจุบันด้วยคลาสเดียวกันจากนั้นฉันจะใช้มันเพื่อเพิ่มชื่อลงในแบบฟอร์มอินพุต โดยทั่วไปฉันอนุญาตให้ผู้ใช้คลิก<span>และจากนั้นโดยเพิ่มรายการอื่นสำหรับรายการประเภทเดียวกัน แต่ฉันไม่สามารถคิดวิธีที่จะนับสิ่งเหล่านี้ทั้งหมดด้วย jQuery / JavaScript ฉันจะตั้งชื่อรายการเป็นสิ่งที่ชอบname="whatever(total+1)"ถ้าใครมีวิธีที่ง่ายในการทำเช่นนี้ฉันจะขอบคุณอย่างยิ่งเพราะ JavaScript ไม่ได้เป็นภาษาพื้นเมืองของฉัน

30
ลบรายการซ้ำออกจากอาร์เรย์ของวัตถุใน JavaScript
ฉันมีวัตถุที่มีอาร์เรย์ของวัตถุ things = new Object(); things.thing = new Array(); things.thing.push({place:"here",name:"stuff"}); things.thing.push({place:"there",name:"morestuff"}); things.thing.push({place:"there",name:"morestuff"}); ฉันสงสัยว่าวิธีใดดีที่สุดในการลบวัตถุที่ซ้ำกันออกจากอาร์เรย์ ตัวอย่างเช่นทุกสิ่งทุกอย่างจะกลายเป็น ... {place:"here",name:"stuff"}, {place:"there",name:"morestuff"}

10
อธิบายไวยากรณ์ของฟังก์ชันที่ไม่ระบุชื่อที่ถูกห่อหุ้ม
สรุป คุณสามารถอธิบายเหตุผลที่อยู่เบื้องหลังไวยากรณ์สำหรับฟังก์ชั่นที่ไม่ระบุชื่อที่หุ้มใน JavaScript ได้หรือไม่? ทำไมงานนี้: (function(){})();แต่ตอนนี้ไม่ได้: function(){}();? สิ่งที่ฉันรู้ ใน JavaScript หนึ่งสร้างฟังก์ชั่นที่มีชื่อดังนี้: function twoPlusTwo(){ alert(2 + 2); } twoPlusTwo(); คุณสามารถสร้างฟังก์ชั่นที่ไม่ระบุชื่อและกำหนดให้กับตัวแปร: var twoPlusTwo = function(){ alert(2 + 2); }; twoPlusTwo(); คุณสามารถแค็ปซูลบล็อกของรหัสโดยการสร้างฟังก์ชั่นที่ไม่ระบุชื่อจากนั้นห่อในวงเล็บและดำเนินการทันที: (function(){ alert(2 + 2); })(); สิ่งนี้มีประโยชน์เมื่อสร้างสคริปต์แบบแยกส่วนเพื่อหลีกเลี่ยงความยุ่งเหยิงของขอบเขตปัจจุบันหรือขอบเขตโกลบอลที่อาจมีตัวแปรที่ขัดแย้งกัน - เช่นในกรณีของสคริปต์ Greasemonkey, ปลั๊กอิน jQuery เป็นต้น ตอนนี้ฉันเข้าใจว่าทำไมงานนี้ วงเล็บใส่เนื้อหาและเปิดเผยเฉพาะผล (ฉันแน่ใจว่ามีวิธีที่ดีกว่าที่จะอธิบายว่า) (2 + 2) === 4เช่นเดียวกับ สิ่งที่ฉันไม่เข้าใจ …

5
เหตุใดแนวคิดของ React ของ Virtual DOM จึงมีประสิทธิภาพมากกว่าการตรวจสอบรุ่นที่สกปรก
ผมเห็นปฏิกิริยาพูดคุย dev ที่ ( พีทล่า: React: ทบทวนการปฏิบัติที่ดีที่สุด - JSConf สหภาพยุโรป 2013 ) และลำโพงที่กล่าวว่าสกปรกการตรวจสอบของรูปแบบได้ช้า แต่ไม่ได้คำนวณความแตกต่างระหว่าง DOM เสมือนจริงแม้จะมีประสิทธิภาพน้อยกว่าตั้งแต่ DOM เสมือนในกรณีส่วนใหญ่ควรมีขนาดใหญ่กว่าแบบจำลองใช่หรือไม่ ฉันชอบพลังที่อาจเกิดขึ้นของ Virtual DOM (โดยเฉพาะอย่างยิ่งการเรนเดอร์ฝั่งเซิร์ฟเวอร์) แต่ฉันต้องการทราบข้อดีและข้อเสียทั้งหมด


7
รับกุญแจของวัตถุมากมาย
ฉันต้องการได้รับคีย์ของวัตถุ JavaScript เป็นอาร์เรย์ทั้งใน jQuery หรือ JavaScript บริสุทธิ์ มีวิธี verbose น้อยกว่านี้ไหม var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' }; var keys = []; for (var key in foo) { keys.push(key); }

20
วิธีการอ่านไฟล์ข้อความในเครื่อง?
ฉันพยายามเขียนโปรแกรมอ่านไฟล์ข้อความอย่างง่ายโดยการสร้างฟังก์ชั่นที่ใช้ในเส้นทางของไฟล์และแปลงแต่ละบรรทัดของข้อความให้เป็นอาร์เรย์อาร์ค แต่มันไม่ทำงาน function readTextFile() { var rawFile = new XMLHttpRequest(); rawFile.open("GET", "testing.txt", true); rawFile.onreadystatechange = function() { if (rawFile.readyState === 4) { var allText = rawFile.responseText; document.getElementById("textSection").innerHTML = allText; } } rawFile.send(); } เกิดอะไรขึ้นที่นี่? สิ่งนี้ยังไม่สามารถใช้งานได้หลังจากเปลี่ยนรหัสเล็กน้อยจากการแก้ไขครั้งก่อนและตอนนี้ก็ทำให้ฉันมีXMLHttpRequestข้อยกเว้น 101 ฉันได้ทดสอบสิ่งนี้บน Firefox แล้วมันใช้งานได้ แต่ใน Google Chrome มันใช้งานไม่ได้และมันทำให้ฉันมีข้อยกเว้น 101 ฉันจะทำให้มันทำงานบนไม่ใช่แค่ Firefox เท่านั้น แต่ยังใช้กับเบราว์เซอร์อื่น ๆ )?

13
สิ่งที่ทำให้เกิดข้อผิดพลาดนี้ -“ ข้อผิดพลาดร้ายแรง: ไม่สามารถหาเสียงฮึดฮัดท้องถิ่น”
ฉันลบ grunt เวอร์ชั่นเก่าก่อนจากนั้นฉันก็ติดตั้ง grunt เวอร์ชั่นใหม่แล้วก็พบข้อผิดพลาดนี้: D: \ www \ grunt-test \ grunt grunt-cli: อินเตอร์เฟสบรรทัดคำสั่ง grunt (v0.1.4) ข้อผิดพลาดร้ายแรง: ไม่สามารถหาเสี้ยงฮึดฮัดแสดงความไม่พอใจในท้องถิ่น หากคุณเห็นข้อความนี้แสดงว่าไม่พบ Gruntfile หรือไม่ได้ติดตั้ง Grunt ไว้ในโครงการของคุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการติดตั้งและกำหนดค่า grunt โปรดดูที่คู่มือเริ่มต้นใช้งาน: http://gruntjs.com/getting-started เป็นเพราะไม่มีการอ้างอิงถึงเสียงฮึดฮัดในเส้นทางของระบบของฉัน? หรืออย่างอื่น? ฉันพยายามติดตั้งใหม่สองสามครั้งแล้ว

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