灵活应用js调试技巧解决样式问题的步骤分享


Posted in Javascript onMarch 15, 2012

由于种种原因,例如:代码逻辑复杂、时间久了遗忘处理细节、或者根本就是接手修改别人遗留的bug,在这种情况下,debug就会变成一件头疼的事情。

在此分享一些JS调试方面的技巧,针对各种疑难杂症,往往能起到较好的效果。

Step 1:检查服务器直接render出来的内容

使用查看源文件的方式,这一步首先明确,页面HTML片段是否在服务器端就已经不正常了。

Step 2:比较实际的HTML内容和服务器render出来的原始内容之间的差异

可以使用一些前端工具(例如:IE下的开发人员工具、Firebug、Chrome的开发人员工具等),实时查看当前HTML片段内容

Step 3:在合适的位置增加debugger

例如:先找出大概可能出问题的js代码,在合适的地方加debugger,或者是使用工具增加类似于“在属性被修改时中断”的断点,例如实际的HTML比原始内容多出了一个width属性

Step 4:运行你的页面,进入中断,并检查js调用堆栈(关键的一步)

推荐使用IE支持的Visual Studio调试器(需要先设置IE:取消“禁用脚本调试”),这时基本就能确定是哪个js方法修改了样式

Javascript 相关文章推荐
Javascript级联下拉菜单以及AJAX数据验证核心代码
May 10 Javascript
jQuery操作select下拉框的text值和value值的方法
May 31 Javascript
使用AngularJS实现可伸缩的页面切换的方法
Jun 19 Javascript
CSS中position属性之fixed实现div居中
Dec 14 Javascript
JavaScript中eval()函数用法详解
Dec 14 Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
May 13 Javascript
vue数据双向绑定原理解析(get & set)
Mar 08 Javascript
vue分类筛选filter方法简单实例
Mar 30 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
Apr 17 Javascript
10个最优秀的Node.js MVC框架
Aug 24 Javascript
JS删除数组里的某个元素方法
Feb 03 Javascript
vue组件实现进度条效果
Jun 06 Javascript
3款实用的在线JS代码工具(国外)
Mar 15 #Javascript
Extjs中使用extend(js继承) 的代码
Mar 15 #Javascript
JQuery一种取同级值的方式(比如你在GridView中)
Mar 15 #Javascript
ASP.NET MVC中EasyUI的datagrid跨域调用实现代码
Mar 14 #Javascript
javascript 进阶篇3 Ajax 、JSON、 Prototype介绍
Mar 14 #Javascript
javascript 进阶篇2 CSS XML学习
Mar 14 #Javascript
javascript 进阶篇1 正则表达式,cookie管理,userData
Mar 14 #Javascript
You might like
超神学院:天使彦公认最美的三个视角,网友:我的天使快下凡吧!
2020/03/02 国漫
php 将字符串按大写字母分隔成字符串数组
2010/04/30 PHP
destoon供应信息title调用出公司名称的方法
2014/08/22 PHP
php画图实例
2014/11/05 PHP
php添加数据到xml文件的简单例子
2016/09/08 PHP
PHP 99乘法表的几种实现代码
2020/10/13 PHP
javascript function、指针及内置对象
2009/02/19 Javascript
JavaScript 定义function的三种方式小结
2009/10/16 Javascript
nodejs入门详解(多篇文章结合)
2012/03/07 NodeJs
js写一个弹出层并锁屏效果实现代码
2012/12/07 Javascript
node.js中的path.dirname方法使用说明
2014/12/09 Javascript
JavaScript中操作字符串小结
2015/05/04 Javascript
JavaScript实现自动弹出窗口并自动关闭窗口的方法
2015/08/06 Javascript
javascript合并表格单元格实例代码
2016/01/03 Javascript
jquery $.trim()去除字符串空格的实现方法【附图例】
2016/03/30 Javascript
JS中input表单隐藏域及其使用方法
2017/02/13 Javascript
vue-cli 组件的导入与使用教程详解
2018/04/11 Javascript
vue-router路由懒加载的实现(解决vue项目首次加载慢)
2018/08/28 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
2019/04/04 Javascript
详解python中的hashlib模块的使用
2019/04/22 Python
Python操作SQLite数据库过程解析
2019/09/02 Python
python正则表达式匹配IP代码实例
2019/12/28 Python
Python进阶之迭代器与迭代器切片教程
2020/01/29 Python
css3 利用transform打造走动的2D时钟
2020/10/20 HTML / CSS
HTML5本地数据库基础操作详解
2016/04/26 HTML / CSS
手对手的教你用canvas画一个简单的海报的方法示例
2018/12/10 HTML / CSS
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
博士研究生自我鉴定范文
2013/12/04 职场文书
《陈毅探母》教学反思
2014/05/01 职场文书
2014年财务工作自我评价
2014/09/23 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
2014年团支部年度工作总结
2014/12/24 职场文书
2015年项目工作总结
2015/04/29 职场文书
python爬取豆瓣电影TOP250数据
2021/05/23 Python
MySQL快速插入一亿测试数据
2021/06/23 MySQL
JS前端canvas交互实现拖拽旋转及缩放示例
2022/08/05 Javascript