利用link标签rel="alternate stylesheet"属性实现界面动态换肤

来源:互联网 发布:php 图片上传 编辑:程序博客网 时间:2024/06/05 08:44

<link>标签

rel="stylesheet"属性指定将一个样式表立即应用到文档.

rel="alternate stylesheet"属性将其作为备用样式表而在默认情况下禁用它

 

通过js拿到link标签对象,disabled属性设置,可以实现变化页面导入样式表

disabled = true;表示它不会立即生效

disabled = false;表示立即生效


本人用了jquery插件,使用方法如下:

第一步:定义多个样式表:

<link rel="alternate stylesheet" title="classic" href="css/style0.css" type="text/css" media="screen"/><link rel="alternate stylesheet" title="silver" href="css/style.css" type="text/css" media="screen"/><link rel="stylesheet" title="modern" href="css/style1.css" type="text/css" media="screen"/>

   定义了3个外链样式表,其中使style1.css生效


第二步:定义转换按钮:


<p>    <button onclick="switchTheme('modern')"><img style="width:126px;height:66px" src="img/t1.png" alt="Modern"/></button>    <button onclick="switchTheme('silver')"><img style="width:126px;height:66px" src="img/t2.png" alt="Silver"/></button>    <button onclick="switchTheme('classic')"><img style="width:126px;height:66px" src="img/t3.png" alt="Classic"/></button></p>

第三部:定义相关的js

function switchTheme(t) {$('link[title]').each(function(){this.disabled = true;this.disabled = (this.title != t); });        return false;};

    这样就可以动态的改变整体页面的皮肤了。


原创粉丝点击