是否可以将属性设置为:hover,当您在单击按钮的地址时?
为了澄清,假设我有一个按钮,当我点击它时会变成红色并重定向到mysite.com/buttonPage.html。在buttonPage.html上,我可以将按钮保持红色吗?
答案 0 :(得分:1)
否。保持按钮红色的唯一方法是使用某种外部持久性。浏览器不会为您处理此持久性。
您可以在当前页面中执行AJAX渲染,而不是重定向到另一个页面,在这种情况下,您的按钮将继续设置为红色样式。但是,在重定向到另一个页面时,您将失去状态。
您可以通过多种方式将页面呈现与持久性联系起来,比如说一个数据库可以告诉您是否投了我的答案。如果你这样做了,那么在视图逻辑的某个地方,你会将upvote按钮呈现为橙色。
答案 1 :(得分:1)
通常,在服务器端,如果目标与当前页面匹配,则向按钮/链接添加一个类。像(在PHP中)的东西:
<a href="<?php echo $url; ?>"
<?php
if ($url === current_url()) echo ' class="current"';
?>
>Link Text</a>
然后将.current
选择器添加到:hover
的样式。
这实际上并不是“维持状态”,而是应该做你想做的事。