我不知道我理解你的問題很好。
我認爲你所說的鏈接:
<a href="" id="link" name="link" onClick="yesnolist(1)">Free Chat</a>
現在,有人點擊時,你想讓它創建一個下拉列表?我不確定您的意思是在錨點元素旁邊的下拉列表,還是使用下拉列表替換錨點元素。
我會建議,在任何時候,使用jQuery JavaScript的,但因爲它似乎你不使用它:
<a href="#yesno" id="link" name="link">Free Chat</a>
<select id="yesno_id" name="yesno" style="display:none;">
<option value="1">Yes</option>
<option value="2">No</option>
</select>
我們不會顯示下拉然而,即使它已經存在。現在我們將一個監聽器添加到#link和#yesno_id中(請注意,下面的代碼要麼位於標籤之前,要麼應放置在主體監聽器中)。
<script type="text/javascript">
document.getElementById('link').addEventListener('click', function() {
var yesno = document.getElementById('yesno_id');
yesno.style.display = 'block';
yesno.addEventListener('change', function() {
if (this.value === '1') {
window.location.href = "http://.........";
}
else {
this.style.display = 'none';
}
}, true);
}, true);
</script>
我沒有測試它在所有,將最有可能有錯誤(我甚至沒有把它寫在一個編輯器),但它應該給你的總體思路。
這裏我們使用不顯眼的javascript:我們不會在HTML上添加對JavaScript的任何引用。我們只需要id和類,就像任何沒有JS的HTML一樣。然後,我們使用JavaScript訪問HTML元素,除此之外,我們綁定click和change事件處理程序(對應於每個元素)。
如果用戶點擊鏈接,然後選擇否,它將隱藏下拉菜單,如果它顯示爲yes,它將重定向到您所說的網址。實際上在錨點的href上有鏈接並取消事件傳播會很好。然後從yesno_id事件處理程序中獲取href並重定向到該處理程序。這樣,如果JS被禁用,它會直接帶你到頁面(儘管它不會「確認」)。
謝謝我哇nt在用戶點擊linnk然後從下拉列表中顯示免費聊天鏈接旁邊的下拉列表,如果用戶選擇YES,那麼它會轉到「http:// ......」希望這是有道理的? 謝謝 – 2011-05-03 09:48:30
你有沒有試過這段代碼?我只是試了一下,它的工作。請檢查它是否符合你的要求。最有可能的是,如果全部瞭解,你只需要改變CSS。 – Mamsaac 2011-05-03 09:51:41