แป้นพิมพ์ลัดของ Chrome เพื่อหยุดการทำงานของสคริปต์ชั่วคราว


48

มีแป้นพิมพ์ลัดใน Google Chrome ที่จะหยุดการทำงานของสคริปต์หรือไม่ (เทียบเท่ากับการกดปุ่ม||"หยุดการทำงานสคริปต์ชั่วคราว" ในแผงเครื่องมือเครื่องมือนักพัฒนาซอฟต์แวร์)

ฉันต้องการใช้เครื่องมือ Dev เพื่อตรวจสอบองค์ประกอบในสถานะการวางเมาส์ mouseleaveรหัสจะทำงานอย่างเห็นได้ชัดถ้าผมพยายามที่จะคลิกปุ่มหยุดชั่วคราว!

คำตอบ:


56

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

jQuery(window).keydown(function(e) { if (e.keyCode == 123) debugger; });

F12ซึ่งจะทำให้เกิดการดำเนินการที่จะหยุดชั่วคราวเมื่อคุณกด

( debuggerเป็นคำสั่ง JavaScript ที่บังคับให้เบรกพอยต์)


อัปเดต:เครื่องมือ Dev มีทางลัดในตัวมากมาย (กดF1เพื่อดูรายการ) แต่คุณต้องเน้นในหน้าต่าง Dev Tools เพื่อให้สามารถใช้งานได้ หยุดการดำเนินการสคริปต์F8(เมื่อมองไปที่แหล่งที่มาของแท็บของ Chrome 45) หรือ+Ctrl/

ซับในด้านบนอาจยังมีประโยชน์หากคุณต้องจดจ่อกับหน้ากระดาษก่อนที่จะหยุด


6
F8 ใช้ได้เฉพาะเมื่อคุณอยู่ในหน้า "แหล่งที่มา" ใน DevTools (Chrome 40)
netvope

1
CTRL + / ทำงานภายใต้ Linux หรืออะไรบางอย่าง? เนื่องจาก CTRL + \ ทำงานบน Windows และอื่น ๆ ก็น่าจะเป็น CMD + \ สำหรับ MAC
djabraham

1
ผลเหมือนกัน แต่ไม่ต้องการ jQuery:window.addEventListener('keydown', e => { if (e.keyCode === 123) debugger })
pau.moreno

บางครั้งองเหตุการณ์ปิดองค์ประกอบที่คุณต้องการที่จะตรวจสอบsetTimeout(function() { debugger; }, 1000)จะช่วยให้ที่นี่
cyptus

14

รายการอ้างอิงแป้นพิมพ์ลัดของ Google สำหรับ "การเรียกใช้สคริปต์ชั่วคราว / กลับสู่การทำงาน":

  • F8หรือCtrl+ \(Windows)
  • F8หรือCmd+ \(Mac)

มีวิธีที่ง่ายกว่าในการตรวจสอบสิ่งต่าง ๆ ในสถานะคี่เช่นโฮเวอร์หรือแอคทีฟ ก่อนอื่นให้ค้นหาโหนด DOM ในบานหน้าต่างองค์ประกอบของ Chrome Dev Tools ตอนนี้คุณสามารถคลิกขวาที่โหนดและดูที่ "บังคับองค์ประกอบของรัฐ" ในเมนูบริบทหรือเลือกโหนดและดูในแท็บสไตล์และค้นหาไอคอน dashed-box-mouse-mouse-mouse-pointer (ถัดจากไอคอน + / plus ที่ให้คุณเพิ่มกฎ CSS ใหม่ไปelement.styleยังองค์ประกอบที่คุณเลือก)

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


3
F8 ไม่ทำงานในหน้าต่างเบราว์เซอร์หลักเฉพาะในหน้าต่าง Dev Tools การใช้ Force Element State ไม่ได้ช่วยอะไรเลยเมื่อเป็นสคริปต์ที่ฟังเหตุการณ์ (ไม่ใช่แค่ CSS) ที่ทำสิ่งต่างๆ
josh3736

3
F8 ทำงานในหน้าต่างเบราว์เซอร์หลัก แต่คุณต้องเปิดหน้าต่าง Dev Tools ไว้ที่แท็บ Source ในพื้นหลัง
59

8

ฉันเขียนส่วนขยาย Chrome แบบย่อที่ช่วยให้คุณกดปุ่มหยุดชั่วคราวบนแป้นพิมพ์เพื่อหยุดการประมวลผลจาวาสคริปต์

วิธีรับ:

การใช้งาน:

  1. เปิดเครื่องมือนักพัฒนาของ Chrome ไว้
  2. กดpause/breakบนคีย์บอร์ดของคุณ

1
@Flu ฉันเพิ่มลงใน Chrome เว็บสโตร์ เพลิดเพลินไปกับ
SpareBytes

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

แป้นพิมพ์ของฉันไม่มีปุ่ม "หยุดชั่วคราว / หยุดพัก" ดังนั้นฉันต้องแมปกับรหัสอื่น สิ่งที่ไม่ชัดเจนสำหรับฉันในทันทีคือคุณต้องกดปุ่มชุดใหม่ค้างไว้ในขณะที่คุณคลิกปุ่ม "บันทึกคำสั่งผสม"
Jasper Citi

0

จากการใช้ Google-fu ของฉันฉันพบรายการทางลัดของแป้นพิมพ์ Chrome ของ Google อย่างเป็นทางการ

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

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