地址栏上的一段语句,改变页面的风格。(教程)

 更新时间:2008年04月02日 18:23:26   作者:  
地址栏中的js改变页面的风格代码
大家可以先把下面这段语句粘贴到地址栏,然后回车,看看效果。

javascript:with(document.body){background="";bgColor="#779966";text="#bb4400"};void(document.styleSheets[0].addRule("TD","border:1 solid black;background-color:#eef9ee!important"))

下面是解说:

1.javascript:url
伪url技术。它适用于所有包括href和src属性的标记:假如一个属性能接收url作为它的值,它就可以接收这个javascript:url ,地址栏相当于location.href,所以也不例外咯。:)

2.返回值
多数js语句会有返回值,这里我们并不需要返回值,以免它传递给href属性,使location.href起作用。
可以用alert这个不会产生返回值,但又会计算表达式的方法来达到我们的目的:把语句作为alert的参数,由alert来执行。
但是用alert会弹出计算的最终结果(即语句段最终的返回值),我们并不需要弹出框,只需要语句静静地执行,并且没有返回值。void运算符正是我们所需要的。

3.再谈返回值
在顺序执行的语句段中,如果每一句都有返回值,而某一个属性(比如href)只能接收一个返回值,它会接收哪一个返回值呢?答案是最后一个。因此,我们只需在最后一句加上void就行了。

4.with语句
with语句可以为用大括号括起来的一段语句段设定默认对象,以减少代码量。上面的with(document.body){background="";bgColor="#779966";text="#bb4400"}
即相当于:
document.body.background=""
document.body.bgColor="#779966"
document.body.text="#bb4400"

5.为已定义的样式表新增规则
document.styleSheets[0].addRule("TD","border:1 solid black")
上面这段语句给页面中的第一个样式表对象增加一个规则:让所有的表格单元带上一个象素宽的黑色实线边框。
styleSheets是页面上所有<style></style>和<link rel=stylesheet type=text/css href=***.css>元素的集合。styleSheets[0]是指第一个样式表元素。
addRule()方法用来给样式表对象插入规则。第一个参数是selector,第二个参数是对selector的定义。

6.样式表的!important属性
凡是具有!important属性的样式,在页面中具有优先权。举例:
<style>
p {color:red!important}
</style>
<p style="color:green">这里的文字是红色的。</p> 

好了,开头的那段语句就包括这些知识点,大家有没有在这基础之上的进一步的创新,让我学习学习?鼓励创新哦。:)

相关文章

  • Storage、cookie的用途和优缺点比较

    Storage、cookie的用途和优缺点比较

    cookie的大小是受限制的,并且每次请求cookie都会被发送,浪费宽带,cookie还需要指定作用域,不可以跨域调用。cookie的作用是与服务器进行交互,作为http规范的一部分存在,而webstorage仅仅是为了本地“存储”数据而生。
    2023-07-07
  • js中substr,substring,indexOf,lastIndexOf的用法小结

    js中substr,substring,indexOf,lastIndexOf的用法小结

    本篇文章主要是对js中substr,substring,indexOf,lastIndexOf的用法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12
  • jquery库文件略庞大用纯js替换jquery的方法

    jquery库文件略庞大用纯js替换jquery的方法

    jquery库文件略庞大,因此在某些情况下就需要用纯js替换jquery,需要的朋友可以参考下
    2014-08-08
  • 解决layui表格的表头不滚动的问题

    解决layui表格的表头不滚动的问题

    今天小编就为大家分享一篇解决layui表格的表头不滚动的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例

    JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例

    这篇文章主要介绍了JS实现的定时器展示简单秒表、页面弹框及跳转操作,结合实例形式分析了JavaScript时间函数及页面元素动态操作相关使用技巧,需要的朋友可以参考下
    2020-01-01
  • js实现圆形菜单选择器

    js实现圆形菜单选择器

    这篇文章主要为大家详细介绍了js实现圆形菜单选择器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • js图片上传的封装代码

    js图片上传的封装代码

    这篇文章主要为大家详细介绍了js图片上传的封装代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • JS 控件事件小结

    JS 控件事件小结

    事件对于控件来说至关重要,控件的消息通信机制使用事件的成本最低,但是对于JS控件来说有一些麻烦需要解决,JS类本身不支持事件,DOM模型支持的事件仅适应于浏览器的DOM节点。所以创建一套事件是我们写控件之前要做的
    2012-10-10
  • JavaScript中的冒泡排序法

    JavaScript中的冒泡排序法

    这篇文章主要介绍了JavaScript中的冒泡排序法的知识,并通过一个例子给大家讲解了js冒泡排序,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-08-08
  • 基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作

    基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作

    这篇文章主要介绍了基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-08-08

最新评论