如果网址以某个结尾结束,我想将链接设为粗体:
......依此类推#style15
最好用PHP或Javascript做到这一点吗? 我可以将以下内容转换为贯穿#style1 - #style15?
的循环<?php
$URL = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
if ($URL == "http://url.com/test#style1") { ?>
<style>.a1 {font-weight:bold;} </style>
<?
}
else if ($URL == "http://url.com/test#style2") {
?>
<style>.a2 {font-weight:bold;} </style>
<?
}?>
答案 0 :(得分:1)
你不能在php中访问哈希,就像这里&#34;#style1&#34;从URL,为此你必须javascript。
以下是Javascript中的解决方案:
<script>
if (window.location.hash) {
var hash = window.location.hash.substring(1);
if (hash.length != 0) {
for(i=1; i<=15; i++){
if(("style"+i) == hash){
/* Used jQuery here */
$(".a"+i).css("font-weight", "bold");
}
}
}
}
</script>
答案 1 :(得分:0)
PHP无法访问散列(#)后面的部分或URL,因此只能使用JavaScript。
您可以location.hash
访问此部分网址。
答案 2 :(得分:0)
我建议您使用CSS来应用样式。它可以轻松读取属性的最终字符(E.G $ =),并在不使用PHP或Javascript的情况下应用适当的样式。
a[href$="1"] { font-weight:bold; }