Chrome komut dosyası hata ayıklayıcısına jquery.js'yi yoksaymasını söyleyebilir miyim?


98

Chrome hata ayıklayıcısına (veya belki Firebug?) Belirli dosyaların içinde bozulmamasını söylemenin bir yolu var mı? Esasen kırılmadıklarını varsayarsak? Bu, inşa edebilecekleri bir şey gibi görünüyor.


3
Bu, özellikle jquery olayları bağlamında benim için yararlı olacaktır. Bir olay tetiklendiğinde, hangi işleyicilerin çağrıldığını anlamak için bir sürü saçmalıktan geçmeniz gerekir.
tofarr

Görünüşe göre cevap olarak jfriend00'ı işaretlemelisiniz. Bu sinir bozucu davranışın sebebini bulamadım ve cevabı sorunu çözdü.
OrPaz

@OrPaz Katılmıyorum, benim problemim (ve Josh'un problemini anlıyorum) dosyamızda hata ayıklıyor olmamız, ancak bu bir istisna atıldığı anlamına gelmez. Benim varsayımım, kodumun sorun olduğu ve jQuery'nin olmadığı yönündedir, bu yüzden asla jQuery'de hata ayıklamak istemiyorum. Bunu .NET'teki DebuggerHiddenAttribute gibi düşünüyorum
Nathan Koop

Jfriend00'ün cevabını oyladım, çünkü bu soruyla karşılaşan insanlar için değerli olabilir, ancak doğru cevap olarak işaretlemedim çünkü Nathan Koop haklı, bu benim sorunumu çözmüyor.
Josh Schultz

Yanıtlar:


47

Blackboxing JS dosyaları artık Firefox'ta https://developer.mozilla.org/en-US/docs/Tools/Debugger

Ve Deneysel Geliştirme araçlarını kullanan Chrome Canary'de. http://www.divshot.com/blog/tips-and-tricks/ignoring-library-code- while-debugging-in-chrome/

Güncelle . Chrome v. 75'te kara kutu için ayrı bir sekme vardır.

Yukarıdakiler artık kararlı Chrome yapısında da çalışıyor.


7
Kara kutu, hata ayıklayıcının dosyayı atlamasını sağlamıyor gibi görünüyor. Yine de fonksiyon çağrılarından geçecek ... Bir dosyayı tamamen görmezden gelmek güzel olurdu.
Antonio Brandao

4
Kara kutudaki nokta budur - kodu içeriğini görmeden çalıştırmak.
diynevala

1
Diğer kitaplıklardan geçmediğinizde kara kutu yapmak değildir, var olmadıklarından veya kullanılmadıklarından değil.
johnny

firefox için güncellenmiş bağlantı: developer.mozilla.org/en-US/docs/Tools/Debugger/How_to/…
pcarvalho

31

Chrome'un en son sürümü , tam olarak aradığınız şeyi yapan yeni bir kara kutu özelliği uyguladı. Temel olarak, belirli bir dosyada kara kutu seçeneğini ayarladığınızda, Chrome hata ayıklayıcısının o dosyaya girmesini engeller.

Bu özellik yerleşiktir ve dosyanın içerik menüsü ile ayarlanabilir (sağ tıklama). Ayrıca, Chrome hata ayıklayıcı tüm istisnalarda duracak şekilde ayarlanmışsa da çalışır.


2
çok temiz çözüm Eklenti gerekmez.
George Botros

3
Maalesef artık çalışmıyor. "Yakalanan İstisnaları Duraklat" seçeneğini işaretlediyseniz ve ardından blackbox jQuery, istisnaları yine de bozacaktır.
blackmamba

15

Yaşadığınız sorun, Chrome hata ayıklayıcısının jQuery'nin içindekiler de dahil olmak üzere tüm istisnalarda durması ise, Chrome'a ​​tüm istisnaları değil, yalnızca yakalanmamış istisnaları duraklatmasını söylemeniz gerekebilir. Hata ayıklayıcıdaki Komut Dosyası panelindeyken, pencerenin sol alt köşesinde bunu kontrol eden bir simge vardır.


Beni bununla kurtardı! Teşekkürler! (+1)
OrPaz

12

Chrome'da, Geliştirici Araçları'nı açın, ardından Ayarlar'a gidin ve Kara Kutu sekmesini göreceksiniz :

Chrome Kara Kutusu

FireFox'ta daha da kolay, dosyanın altındaki Göz'e tıklamanız yeterli:

FireFox Blackbox


Az önce hayatımı cennet yaptın! Teşekkürler!
Do not know

7
  1. Geliştirici araçları ayarına gidin ve sol paneldeki Balckboxing sekmesine tıklayın.
  2. Ardından, Desen ekle düğmesini tıklayın ve jquery.js yazın
  3. Geliştirici araçlarını kapatıp yeniden açın, şimdi atlandı!

2

Hata ayıklayıcı jQuery dosyalarında bir yere patlarsa, şüpheli çağrıları bir dene / yakala içine alabilir ve ardından kendi başına bir hata atabilirsin catch. Bu şekilde, nerede yanlış yaptığınızı tam olarak tespit edebilirsiniz.

Kodumun, örneğin geçersiz JSON gibi neden patladığını görmek için yığın izleme yapmaya, üzerinde parlaklığı denemekten daha meyilli olurdum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.