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

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

20
jQuery UI Tabs - วิธีรับดัชนีแท็บที่เลือกในปัจจุบัน
ฉันรู้ว่ามีการถามคำถามเฉพาะนี้มาก่อนแต่ฉันไม่ได้รับผลลัพธ์ใด ๆ จากbind()เหตุการณ์ในjQuery UI Tabsปลั๊กอิน ฉันแค่ต้องการindexแท็บที่เลือกใหม่เพื่อดำเนินการเมื่อคลิกแท็บ bind()ช่วยให้ฉันสามารถเชื่อมต่อกับเหตุการณ์ที่เลือกได้ แต่วิธีการรับแท็บที่เลือกในปัจจุบันใช้งานไม่ได้ จะส่งคืนดัชนีแท็บที่เลือกไว้ก่อนหน้านี้ไม่ใช่ดัชนีใหม่: var selectedTab = $("#TabList").tabs().data("selected.tabs"); นี่คือรหัสที่ฉันพยายามใช้เพื่อรับแท็บที่เลือกในปัจจุบัน: $("#TabList").bind("tabsselect", function(event, ui) { }); เมื่อฉันใช้รหัสนี้วัตถุ UI undefinedกลับมา จากเอกสารนี่ควรเป็นวัตถุที่ฉันใช้เชื่อมต่อกับดัชนีที่เลือกใหม่โดยใช้ ui.tab ฉันได้ลองสิ่งนี้ในการtabs()โทรครั้งแรกและด้วยตัวมันเอง ฉันทำอะไรผิดที่นี่?

5
setTimeout ทำงานอย่างไรใน Node.JS
ฉันเดาว่าเมื่อดำเนินการแล้วมันจะอยู่ในคิว แต่ในคิวมีความมั่นใจว่าจะเรียกใช้หลังจาก X มิลลิวินาทีหรือไม่? หรืองานหนักอื่น ๆ ที่สูงกว่าในคิวจะทำให้ล่าช้า?

6
ใช้แอตทริบิวต์สไตล์ CSS แบบไดนามิกใน Angular JS
นี่น่าจะเป็นปัญหาง่ายๆ แต่ดูเหมือนจะหาทางแก้ไม่ได้ ฉันมีมาร์กอัปต่อไปนี้: <div style="width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:#ff0000;"></div> ฉันต้องการให้สีพื้นหลังเชื่อมโยงกับขอบเขตดังนั้นฉันจึงลองสิ่งนี้: <div style="{width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:{{data.backgroundCol}};}"></div> ไม่ได้ผลดังนั้นฉันจึงทำการวิจัยและพบng-styleแต่ก็ไม่ได้ผลฉันจึงลองเอาส่วนไดนามิกออกมาและเขียนโค้ดสไตล์ng-styleให้ยากเช่นนี้ ... <div ng-style="{width:20px; height:20px; margin-top:10px; border:solid 1px black; background-color:#ff0000;}"></div> และนั่นก็ไม่ได้ผล ฉันเข้าใจผิดว่าng-styleทำงานอย่างไร? มีวิธีใส่{{data.backgroundCol}}ลงในแอตทริบิวต์สไตล์ธรรมดาและทำให้มันแทรกค่าได้หรือไม่?

4
แปลงข้อมูล json เป็นตาราง html [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน6 ปีที่ผ่านมา ปรับปรุงคำถามนี้ มีไลบรารี jQuery หรือ javascript ที่สร้างตารางไดนามิกที่ให้ข้อมูล json หรือไม่ ฉันไม่ต้องการกำหนดคอลัมน์ไลบรารีควรอ่านคีย์ในแฮช json และสร้างคอลัมน์ แน่นอนฉันสามารถทำซ้ำผ่านข้อมูล json และสร้างตาราง html ได้ ฉันแค่อยากรู้ว่ามีห้องสมุดที่สามารถนำมาใช้ซ้ำได้หรือไม่

3
วิธี uglify เอาต์พุตด้วย Browserify in Gulp
ฉันพยายามอัปเกรดผลลัพธ์ของ Browserify ใน Gulp แต่ไม่ได้ผล gulpfile.js var browserify = require('browserify'); var gulp = require('gulp'); var uglify = require('gulp-uglify'); var source = require('vinyl-source-stream'); gulp.task('browserify', function() { return browserify('./source/scripts/app.js') .bundle() .pipe(source('bundle.js')) .pipe(uglify()) // ??? .pipe(gulp.dest('./build/scripts')); }); ตามที่ฉันเข้าใจฉันไม่สามารถทำได้ตามขั้นตอนด้านล่างนี้ ฉันต้องทำในท่อเดียวเพื่อรักษาลำดับไว้หรือไม่? gulp.task('browserify', function() { return browserify('./source/scripts/app.js') .bundle() .pipe(source('bundle.js')) .pipe(uglify()) // ??? .pipe(gulp.dest('./source/scripts')); }); gulp.task('scripts', function() …

4
ป้องกันการเปลี่ยนเส้นทางของ Xmlhttprequest
เป็นไปได้หรือไม่ที่จะป้องกันไม่ให้เบราว์เซอร์ติดตามการเปลี่ยนเส้นทางเมื่อส่ง XMLHttpRequest-s (เช่นรับรหัสสถานะการเปลี่ยนเส้นทางกลับมาและจัดการด้วยตัวเอง)

9
วิธีที่ดีที่สุดในการจัดเก็บ JSON ในแอตทริบิวต์ HTML?
ฉันต้องการใส่ออบเจ็กต์ JSON ลงในแอตทริบิวต์ขององค์ประกอบ HTML HTML ไม่จำเป็นต้องตรวจสอบความถูกต้อง ตอบโดย Quentin: จัดเก็บ JSON ในdata-*แอตทริบิวต์ซึ่งเป็น HTML5 ที่ถูกต้อง ออบเจ็กต์ JSON อาจมีขนาดใดก็ได้เช่นใหญ่ ตอบโดย Maiku Mori: ขีด จำกัด สำหรับแอตทริบิวต์ HTML อาจเป็น 65536 ตัวอักษร จะเกิดอะไรขึ้นถ้า JSON มีอักขระพิเศษ เช่น {foo: '<"bar/>'} ตอบโดย Quentin: เข้ารหัสสตริง JSON ก่อนที่จะใส่ลงในแอตทริบิวต์ตามข้อตกลงทั่วไป สำหรับ PHP ใช้ฟังก์ชั่น htmlentities() แก้ไข - ตัวอย่างโซลูชันโดยใช้ PHP และ jQuery การเขียน JSON ลงในแอตทริบิวต์ …
112 javascript  php  html  json 

10
วิธีรับความสูงและความกว้างของเอกสารโดยไม่ใช้ jquery
วิธีรับความสูงและความกว้างของเอกสารอย่างแท้จริง จาวาสคริปต์ เช่นโดยไม่ต้องใช้ jquery. ฉันรู้เกี่ยวกับ$(document).height()และ$(document).width()แต่ฉันต้องการทำสิ่งนี้ในจาวาสคริปต์. ฉันหมายถึงความสูงและความกว้างของหน้า
112 javascript 

8
โครงสร้างใน Javascript
ก่อนหน้านี้เมื่อฉันต้องการจัดเก็บตัวแปรที่เกี่ยวข้องจำนวนหนึ่งฉันจะสร้างคลาส function Item(id, speaker, country) { this.id = id; this.speaker = spkr; this.country = country; } var myItems = [ new Item(1, 'john', 'au'), new Item(2, 'mary', 'us') ]; แต่ฉันสงสัยว่านี่เป็นแนวทางปฏิบัติที่ดี มีวิธีอื่นที่ดีกว่าในการจำลองโครงสร้างใน Javascript หรือไม่?
112 javascript  struct 

6
การหน่วงเวลาสคริปต์ jquery จนกว่าทุกอย่างจะโหลดขึ้น
ฉันมีสคริปต์ jquery ซึ่งฉันต้องการเรียกใช้เพียงครั้งเดียวทุกอย่างในหน้ารวมถึงจาวาสคริปต์อื่น ๆ (ซึ่งฉันไม่สามารถควบคุมได้) ทำสิ่งนั้นเสร็จแล้ว แม้ว่าบางทีอาจจะมีทางเลือกอื่นแทน $ (document) แต่ก็หาไม่เจอ
112 javascript  jquery  dom 

2
จะสมัครเข้าร่วมกิจกรรมกับบริการใน Angular2 ได้อย่างไร?
ฉันรู้วิธีเพิ่มเหตุการณ์ด้วย EventEmitter ฉันยังสามารถแนบเมธอดที่จะเรียกได้หากฉันมีส่วนประกอบดังนี้: <component-with-event (myevent)="mymethod($event)" /> เมื่อฉันมีส่วนประกอบเช่นนี้ทุกอย่างก็ทำงานได้ดี ฉันย้ายตรรกะบางอย่างไปเป็นบริการและฉันจำเป็นต้องยกเหตุการณ์จากภายในบริการ สิ่งที่ฉันทำคือ: export class MyService { myevent: EventEmitter = new EventEmitter(); someMethodThatWillRaiseEvent() { this.myevent.next({data: 'fun'}); } } ฉันมีส่วนประกอบที่ต้องอัปเดตค่าบางอย่างตามเหตุการณ์นี้ แต่ดูเหมือนจะไม่สามารถใช้งานได้ สิ่งที่ฉันลองคือ: //Annotations... export class MyComponent { constructor(myService: MyService) { //myService is injected properly and i already use methods/shared data on this. myService.myevent.on(... // 'on' …

9
การรับพารามิเตอร์การสืบค้นจากส่วนแฮชของเราเตอร์ปฏิกิริยา
ฉันใช้ react และ react-router สำหรับแอปพลิเคชันของฉันทางฝั่งไคลเอ็นต์ ฉันไม่สามารถหาวิธีรับพารามิเตอร์การค้นหาต่อไปนี้จาก url เช่น: http://xmen.database/search#/?status=APPROVED&page=1&limit=20 เส้นทางของฉันมีลักษณะเช่นนี้ (ฉันรู้เส้นทางผิดโดยสิ้นเชิง): var routes = ( <Route> <DefaultRoute handler={SearchDisplay}/> <Route name="search" path="?status=:status&page=:page&limit=:limit" handler={SearchDisplay}/> <Route name="xmen" path="candidate/:accountId" handler={XmenDisplay}/> </Route> ); เส้นทางของฉันใช้งานได้ดี แต่ฉันไม่แน่ใจว่าจะจัดรูปแบบเส้นทางเพื่อให้ได้พารามิเตอร์ที่ฉันต้องการอย่างไร ขอบคุณความช่วยเหลือใด ๆ เกี่ยวกับเรื่องนี้!

13
เป็นไปได้ไหมที่จะต่อท้าย innerHTML โดยไม่ทำลายผู้ฟังเหตุการณ์ของลูกหลาน?
ในโค้ดตัวอย่างต่อไปนี้ฉันแนบonclickตัวจัดการเหตุการณ์เข้ากับช่วงที่มีข้อความ "foo" alert()จัดการเป็นฟังก์ชั่นที่ไม่ระบุชื่อที่ปรากฏขึ้น อย่างไรก็ตามหากฉันกำหนดให้กับโหนดหลักตัวจัดการเหตุการณ์innerHTMLนี้onclickจะถูกทำลาย - การคลิก "foo" จะไม่ปรากฏขึ้นในกล่องการแจ้งเตือน สามารถแก้ไขได้หรือไม่? <html> <head> <script type="text/javascript"> function start () { myspan = document.getElementById("myspan"); myspan.onclick = function() { alert ("hi"); }; mydiv = document.getElementById("mydiv"); mydiv.innerHTML += "bar"; } </script> </head> <body onload="start()"> <div id="mydiv" style="border: solid red 2px"> <span id="myspan">foo</span> </div> </body> </html>

15
จะทราบได้อย่างไรว่าแท็ก <script> ไม่สามารถโหลดได้
ฉันเพิ่มแบบไดนามิก &lt;script&gt;แท็กในเพจ&lt;head&gt;และฉันอยากจะบอกได้ว่าการโหลดล้มเหลวหรือไม่ - 404 ข้อผิดพลาดของสคริปต์ในสคริปต์ที่โหลดหรืออะไรก็ตาม ใน Firefox ใช้งานได้: var script_tag = document.createElement('script'); script_tag.setAttribute('type', 'text/javascript'); script_tag.setAttribute('src', 'http://fail.org/nonexistant.js'); script_tag.onerror = function() { alert("Loading failed!"); } document.getElementsByTagName('head')[0].appendChild(script_tag); อย่างไรก็ตามสิ่งนี้ใช้ไม่ได้ใน IE หรือ Safari มีใครรู้วิธีทำให้ใช้งานได้ในเบราว์เซอร์อื่นที่ไม่ใช่ Firefox บ้าง? (ฉันไม่คิดว่าวิธีแก้ปัญหาที่ต้องวางโค้ดพิเศษในไฟล์. js เป็นวิธีที่ดีมันไม่สง่างามและไม่ยืดหยุ่น)

8
เรียกใช้ฟังก์ชัน Javascript จาก URL / แถบที่อยู่
เรียกใช้ฟังก์ชันจาวาสคริปต์จาก URL ได้หรือไม่ โดยพื้นฐานแล้วฉันพยายามใช้ประโยชน์จากเมธอด JS ในหน้าที่ฉันไม่สามารถเข้าถึงซอร์สได้ สิ่งที่ต้องการ: http://www.example.com/mypage.aspx?javascript:printHelloWorld() ฉันรู้ว่าถ้าคุณใส่javascript:alert("Hello World");ลงในแถบที่อยู่มันจะใช้ได้ ฉันสงสัยว่าคำตอบนี้คือไม่ แต่แค่สงสัยว่ามีวิธีทำหรือไม่
112 javascript  url 

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