2012-07-31 63 views
0

是否有任何工具可以找到哪一位JS代碼在頁面加載時更新了DOM元素。我在下面的頁面上有一個<div id="container",它由一些JS代碼設置爲display="none",因爲頁面上有很多代碼,我不知道它的設置位置。查找在JS代碼中引用的DOM元素的工具

http://www.flypeach.com/airport/specialsupport.aspx

+1

Chrome開發工具中的**時間線** – elclanrs 2012-07-31 03:40:42

+0

@elclanrs - 是否有一種簡單的方法來跟蹤時間軸中特定DOME元素上觸發的事件/函數?我花了10分鐘,並沒有真正做多,因爲它只是報告被調用的通用事件處理程序。 – 2012-07-31 04:48:24

+0

是的,只需在時間軸上記錄一些動作並按照「函數調用」鏈接進行操作即可。當你點擊一個它會帶你到正在運行該功能的腳本,你可以從那裏開始調試'。確保按照「腳本」進行過濾,只有這樣才能更容易找到 – elclanrs 2012-07-31 04:52:36

回答

1

從消除過去幾年的腳本,這似乎是/Portals/_default/Skins/FlyPeachsm4/jquery.anntransformer.min.js

編輯:這是一個在anntransformer.min.js的底部:

$("body div").first().css("display","none"); 

最有可能直接複製了一些例子,其中本是必要的。

+0

謝謝@meder,我找到了你的指導的罪魁禍首。我只是想知道你是如何在Chrome工具中逐一刪除腳本的? – tsukimi 2012-07-31 04:13:57

+0

我'wget'的網址,添加了一個基地href,並通過我的方式vimmed。 – 2012-07-31 04:19:33

0

有時,最好的工具是Ctrl /命令+ F,或Ctrl /命令+ SHIFT + F.

+0

這與問題有什麼關係? ctrl + f搜索,ctrl + shift + f彈出FF中的adblock加選項(如果安裝的話) – elclanrs 2012-07-31 03:48:46

+0

當然我試過控制F但是元素沒有被id直接引用,它使用了一些DOM選擇器 – tsukimi 2012-07-31 04:11:44

+0

@elclanrs,我指的是從一些文本編輯器做這個操作。 – AlvinfromDiaspar 2012-07-31 04:18:44

2

通過一次排除一個文件,你可以很容易地檢測哪些文件是問題。

如果這不可行,您可以隨時在Chrome中嘗試開發工具。在腳本選項卡上,您可以創建中斷點並重新加載頁面以縮小更改發生的時間和位置。