|
藍森林 http://www.lslnet.com 2006年8月25日 8:28
請教關於獲得錨點名稱
初來乍到請多關照
從A頁點擊鏈接到B頁某錨點:<a href="temp.html#3">click</a>
從B頁那裡的地址看到的是:temp.html#3
我在B頁一打開的時候想獲得這個"#3",如何作呢?
靜態頁面是不能傳參數的,可是我知道url裡有這個數字了。
請各位多多指點. |
<a name=3>標題</a>
當點擊那個鏈接的時候,頁面就會跳轉到temp.html的"標題"這個位置 |
終於有人回了:)
是啊是啊,這個我知道,我特地先搜了下呢。
我知道會跳到那裡,但是我有個javascript函數,會高亮錨點的文字,所以要知道目前
顯示的是那個錨點。如果是同一頁的話還好說,但是如果是另外一頁點來的。
就是A頁點到B頁的某個錨點上,我做為一個B頁的javascript,怎麼能知道現在自己的頁顯示的是那個錨點呢?
|
不會吧, 把我弄糊塗了哦, 鼠標點擊A頁的一個鏈接, 然後跳轉到B頁的一個錨點上嘛, 是這樣吧 |
暈哦,我表達能力好差,嗚嗚
大家比較熟知的有錨點的B頁的樣子:
<html>
......
<a href="#1">1.lala</a>
<a href="#2">2.heihei</a>
<a href="#3">3.xixii</a>
......
<a name="1" id="1"></a>lalalalalalal
<a name="2" id="2"></a>heiheiheiheiheiheihei
<a name="3" id="3"></a>xixixixixixixixxixi
......
</html>
從A頁點到B頁xixixixixixi的話:<a href="B.html#3">
這個我知道的
可是我寫了個javascript的函數,會用另外的樣式顯示用戶想看的錨點。
var a = document.getElementById("3");
a.className="red" //比如用紅色字體的class來顯示
(這個函數是個說明,當然不對拉,但就是想表達那麼個意思)
這個函數在B頁可以很好的工作,因為我在點擊的時候就知道我要訪問那個錨點的內容。
如果函數叫changecolor()
B頁就可以寫:
<a href="#1" onclick="changecolor(1)">1.lala</a>
<a href="#2" onclick="changecolor(2)">2.heihei</a>
<a href="#3" onclick="changecolor(3)">3.xixii</a>
可是如果是從A頁來訪問,B頁怎麼知道是那個錨點呢?
沒辦法在A頁調用這個js,因為不能跨頁控制。
所以我想知道能不能通過url,找到B頁當前是哪個錨點在顯示。
累死了,再找不到知音就不做這個了。//擦汗
|
可能我理解能力差吧, 是不是在點了A頁面的鏈接之後跳轉到B頁面的那個錨, 使那個錨以高亮顯示或不同顏色顯示呢 |
將location的字符串做處理,從#開始截取如何? |
//熱淚盈眶中
就是這個意思!!!!
yexj00大俠終於明白了。//親切握手
謝謝buddhi同學(阿彌陀佛,善哉善哉),可不可以說的詳細些?
|
B頁面:
這一段放在body,並加載onload=test()
<script>
function test(){
var
str=location.href.substring(location.href.lastIndexOf("#")+1,location
.href.length);
var aa=document.body.createTextRange();
aa.findText(str);
aa.select();
}
</script>
A頁面:<a href=javascript:void(aa=window.open('kk.htm#a3'))>link</a>
但是有兩個弊病: 1. 頁面如果有與它的name一樣的文本就會錯誤選擇.
2. 沒有遍歷, 只是選擇第一個與錨相符合的文本. |
非常的謝謝你
鞠躬。
這裡真好 ^_________________^ |
真誠感謝yexj00大哥~ |
location.hash |
|