在這裏,我編寫了一個script on JSFiddle,通過使用外部div,從下拉列表中輕鬆選擇不同的選項。
HTML:
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
<nav>
<div data-value="volvo">volvo</div>
<div data-value="saab">saab</div>
<div data-value="mercedes">mercedes</div>
<div data-value="audi">audi</div>
</nav>
CSS:
select {
display:block;
margin:0 0 10px;
}
div {
padding:5px 10px;
margin:0 0 5px;
border:solid 1px #ccc;
background:#eee;
cursor:pointer;
}
JS:
$(document).ready(function(){
var select = $("select"),
value = "";
$("div").on("click",function(){
value = $(this).attr("data-value"); // Store the value of the clicked div
select.find('option[value="'+ value +'"]') // Match the option with the value we get before
.prop("selected",true) // Assign it selected attr
.end() // Go back to the select
.trigger("change"); // Trigger the change to see the change reflected on the select
});
});
基於這個腳本,你可以通過添加例如URL到每增加了很多功能選項(例如:data-link =「http://google.com」)和window.location更改,或任何你想要的。
無論如何,如果你想要一個真正的踢屁股插件,使其自動我建議msDropdown(Documentation here)。
這個插件可以讓你創建自定義選擇與圖像,描述和許多其他功能,通過簡單的綁定他們與選擇標記或JSON信息。 希望就是你要找的。
除非您使用由'divs'等製作的一些自定義選擇框,否則不能這樣做。 – dfsq 2013-02-16 12:08:26
@dfsq,那是不正確的。許多網頁使用這種「剝皮」。 – Phil 2013-02-16 12:10:21
我不認爲這是可能的,這些網站可能正在使用一個自定義的菜單看起來類似於原來的。像這樣一個https://github.com/claviska/jquery-selectBox – 2013-02-16 12:10:54