2013年8月3日 星期六

當網站的畫面有跑版或其他前端相關的bug,該如何處理?

做前端如果一直遇到莫名bug,會是一件很麻煩的事情.
可以的話就要盡量debug,問題出在哪都還不確定,盡量別推說是瀏覽器的錯:P
所以當網站的畫面有跑版或其他前端相關的bug,該如何處理?

我這裡提供一些我自己的方法:

  • 若是跑版問題,是否該檢查一下html結構是符合邏輯的(ex: 行內元素v.s塊級元素; tag沒包好...etc),會不會當初為了趕出prototype而做出來所以沒搞好架構。
  • 瞭解你下過的css以及從別的地方copy過來的css,有時候可以注意 :hover 跟 :active 或 :focus 是不是下過了什麼css,這種事情還蠻容易被忽略。
  • z-index; 浮動(float); clearfix; position:absolute v.s relative等等之類的問題。
  • 你的css所使用的單位,不要沒下:active時是用px, :active時卻是em,單位要多注意。
  • 是不是在其他地方使用了important或是再之後載入的css把它override了? (使用開發人員工具多檢測)
  • 每個瀏覽器都可能有自己的預設的html tag樣式,你是否已經reset了。
  • 瞭解你的程式碼...
  • 注意是否有用jQuery的selector去控制某Dom的css,以及其執行的時間點。
  • 是不是使用其他JavaScript Framework或是library有影響畫面的?
  • 上社群問人。
  • 找stackoverflow(推!)。
  • 問同事。
  • 上線前還有機會debug,(如果你還有精神加班的話)別太快放棄。
感謝Caesar分享他的經驗,特此補上幾點:)
  • check js error is or not ( chrome developer tool)
  • clear cookie and session and local strorage
  • open incognito window
  • switch another browser

目前就這些了
有想到我在補上來:P
也歡迎大家提供自己的想法.


沒有留言:

張貼留言

若你看的文章,時間太久遠的問題就別問了,因為我應該也忘了... XD

Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...