好吧,这是我的问题...我有两页。在第一页上,我有一个标题(h2
)元素,我想在该元素上应用边框样式。在第二页上,只有一个链接。单击第二页的链接以导航到第一页,它应在h2
标签周围的第一页上创建一个边框。
关于如何这样做的任何想法?是否可以使用常规JavaScript或JQuery进行操作?
谢谢!
no ,JavaScript是客户端端,为此,您需要服务器记住是否单击链接,可能通过在数据库或会话中记录下来变量。
当然,如果您使用网站的传统模型,而不是加载已经使用纯JS的页面。
这将是一种非常愚蠢的方法,但是它可以做到这一点。我会认真建议这样做服务器端。
在第2页上,链接回第1页,带有哈希:
<a href="/page1#border">Go back to page one and add a border</a>
和第1页,检查是否有哈希:
if (window.location.hash === '#border') {
$('h2').addClass('withBorder');
}
我认为,如果您正在寻找这种场景,可以通过将一些哈希传递给URL来实现:
i passed a hash named 'second'
在second page url
中,并将此脚本放在第二页上
$(function(){
var url=window.location;
var hash = url.hash.substr(1);
if(hash == "second"){
$('h2').css('border','solid 1px red');
}
});
如果有帮助。
嗯,有一种方法可以使用javaScript做到这一点,尽管它很棘手,并且服务器端也容易得多。您需要使用一些JavaScript来加载不同的页面,而无需刷新整个DOM。我用称为pjax的东西来做到这一点。它的工作方式是让每个页面充当通过Ajax加载所有后续页面的容器。通过不做整页重新加载,您在一页上进行的任何样式都会被带到其他页面(此剂量无法在实际的浏览器刷新中生存)。