使用IE的地址栏来辅助调试Web页脚本


Posted in Javascript onMarch 08, 2007

不小心使用Shift + Left Click去点击了一个链接目标(href)是脚本的超链接,结果却把是否调试脚本的对话框弄了出来。点击yes居然可以打开调试这一句脚本,可是这句脚本是哪里来的呢?
    使用IE的地址栏来辅助调试Web页脚本
     回头看看被新打开的那个IE,结果地址栏里就写着:javascript:open(url)呢。原来IE的地址栏可以使用"JavaScript:"这个声明来执行脚本也,在试试JavaScript:alert('ok'),果然ok!

     好玩的特性,再写点复杂的脚本:javascript: var s=''; for( var i=0; i < 10 ; i++ ) s +=i;。结果是出来了"0123456789",可是执行结果显示在浏览器的主显示区域里了,把IE里原有的内容弄没了。要是可以不影响原有的页面,岂不是可以读些页面里的内容,修后继续提交吗?其实可以办到了,只要保证脚本最有一句是alert(),在浏览器里执行完脚本后就不会跳离当前页面的内容。例如打开http://www.google.com,在地址栏里输入:javascript: document.getElementsByTagName('Input')[1].disabled = true; alert('');,会看见什么呢?不能输入查询关键字了吧?

     其实在地址栏里运行脚本的作用域就是当前页面的脚本作用域,利用这个特点我们除了可以简单的执行脚本语句,还可以辅助我们调试脚本,比如我希望察看一些变量的值,而我们又不需要进入复杂的调试模式。下图就是我调试popup菜单时的一个例子,用这个办法可以避免在代码调试时到处写status=...。
    使用IE的地址栏来辅助调试Web页脚本
     这里我们除了可以在地址栏里写JavaScript:外,同时还可以写vbscirpt: alert("ok!"),ecmascript:和jscirpt。不过ecmascript会自动被转为javascirpt,jscript会被转为vbscript。

     这个特性虽然简单,希望大家都能来玩玩,并且玩出更多的花样哦。

Javascript 相关文章推荐
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 Javascript
jquery ajax方式直接提交整个表单核心代码
Aug 15 Javascript
js实现选中复选框文字变色的方法
Aug 14 Javascript
分享我的jquery实现下拉菜单心的
Nov 29 Javascript
JS常见问题之为什么点击弹出的i总是最后一个
Jan 05 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
May 31 Javascript
AngularJs定制样式插入到ueditor中的问题小结
Aug 01 Javascript
微信小程序 rpx 尺寸单位详细介绍
Oct 13 Javascript
JavaScript中Object值合并方法详解
Dec 22 Javascript
浅谈vue后台管理系统权限控制思考与实践
Dec 19 Javascript
vue中datepicker的使用教程实例代码详解
Jul 08 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
Jan 19 Javascript
JScript中的undefined和&quot;undefined&quot;的区别
Mar 08 #Javascript
JavaScript语句可以不以;结尾的烦恼
Mar 08 #Javascript
JScript中的&quot;this&quot;关键字使用方式补充材料
Mar 08 #Javascript
function, new function, new Function之间的区别
Mar 08 #Javascript
JavaScript中this关键字使用方法详解
Mar 08 #Javascript
区分JS中的undefined,null,&quot;&quot;,0和false
Mar 08 #Javascript
在JavaScript中使用inline函数的问题
Mar 08 #Javascript
You might like
4.与数据库的连接
2006/10/09 PHP
聊天室php&amp;mysql(六)
2006/10/09 PHP
php array_unique之后json_encode需要注意
2011/01/02 PHP
微信公众平台开发实现2048游戏的方法
2015/04/15 PHP
php计算整个mysql数据库大小的方法
2015/06/19 PHP
PHP简单实现DES加密解密的方法
2016/07/12 PHP
PHP获取input输入框中的值去数据库比较显示出来
2016/11/16 PHP
thinkphp3.2.0 setInc方法 源码全面解析
2018/01/29 PHP
jQuery1.5.1 animate方法源码阅读
2011/04/05 Javascript
js中各种类型的变量在if条件中是true还是false
2014/07/16 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
Node.js插件安装图文教程
2016/05/06 Javascript
AngularJS基础 ng-include 指令示例讲解
2016/08/01 Javascript
基于jquery日历价格、库存等设置插件
2020/07/05 jQuery
AngularJS学习笔记之表单验证功能实例详解
2017/07/06 Javascript
vue2.x+webpack快速搭建前端项目框架详解
2017/11/30 Javascript
vue中前进刷新、后退缓存用户浏览数据和浏览位置的实例讲解
2018/09/21 Javascript
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
2020/01/06 Javascript
[14:50]2018DOTA2亚洲邀请赛开幕式
2018/04/03 DOTA
Python中文字符串截取问题
2015/06/15 Python
使用requests库制作Python爬虫
2018/03/25 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
如何在Django项目中引入静态文件
2019/07/26 Python
python 字典的打印实现
2019/09/26 Python
python 实现关联规则算法Apriori的示例
2020/09/30 Python
彻底解决Python包下载慢问题
2020/11/15 Python
Python爬虫分析微博热搜关键词的实现代码
2021/02/22 Python
Bowflex美国官方网站:高级家庭健身器材
2017/12/22 全球购物
英国内衣连锁店:Boux Avenue
2018/01/24 全球购物
意大利辅助药品、药物和补品在线销售:FarmaEurope
2020/04/29 全球购物
保护环境建议书300字
2014/05/13 职场文书
2015年小学生新年寄语
2014/12/08 职场文书
党员公开承诺书2015
2015/01/21 职场文书
2015年体育部工作总结
2015/04/02 职场文书
2019商业计划书格式、范文
2019/04/24 职场文书
小学作文指导之如何写人?
2019/07/08 职场文书