2011-07-24 89 views
2

Hallo全部,
我遇到问题。我写了一个非常广泛的脚本,将我的身体背景从特定于页面的背景图像更改为其他背景图像。对于参考:

我的'mypage.html'的默认背景是class ='image1',在默认样式表中定义。
我已经写了一个脚本,将其更改为持久性样式表中定义的class ='image10'或class ='image11'。 (相信我,这是简短的版本,但是这部分工作...好吧,我将会在这里没有问题。)
我'otherpage.html'的默认背景是class ='image2',默认为 stylesheet,我希望能够从持久样式表中更改为相同的'image10'和'image11'。
这两个默认背景在替代样式表中都有多个不同颜色的版本...将样式表和class ='image1'链接更改为另一个版本的图像。
所有这些都是由页面特定的cookie指导的。这使得寻找一个解决方案非常重要,否则我将不得不为每一个页面设置cookie。我觉得这是不可接受的。
我的问题是,我必须/过去的整个脚本复制到我的“otherpage.html”,改变人的“图像1对”镜像2的或者是有办法的JavaScript是这样的:
当我更改页面时,是否可以更改脚本中的类名称

if(HTML = 'otherpage.html') { 
    (".image1" = ".image2") 
} 

请原谅我非常有趣的剧本。我到处都找过,但我不知道如何寻找这个...希望有人能帮助,以其他方式复制/过去是)

回答

1

您可以在这里使用这个脚本

var currentPage = window.location.pathname; 

if (currentPage == "/somepage.html") { 
    // change the body class name 
    document.getElementsByTagName("body")[0].className = "image2"; 
} 

如果您有多个要测试的页面,则可以使用switch语句。

+0

感谢您的快速反应。明天去试试看已经期待它;) – Kamps

+0

我已经在[另一个问题]重新配置了这个问题(http://stackoverflow.com/questions/6806406/how-do-i-set-a-variable-to-direct-alternative-class )。 – Kamps

0

您可以通过基类来控制样式(背景和其他样式),您可以将其设置为文档的正文标签或任何根容器。在页面加载时检查页面名称并相应地设置类名称。

if(page == "otherPage"){ 
    document.body.className = "image2"; 
} 

现在所有属于image2的类都将被应用。

+0

我在[另一个问题]中重新制定了这个问题(http://stackoverflow.com/questions/6806406/how-do-i-set-a-variable-to-direct-alternative-classes)。 – Kamps

相关问题