现在在我的网站上我有一个选项,只有很少的选项,当我点击它选择是打开的,看到所有选项是否有任何方法使其悬停而不是点击?
<div class="control">
<select id="limiter" class="limiter-options" data-role="limiter">
<option value="24" selected="selected"> 24 per page </option>
<option value="48"> 48 per page </option>
<option value="72"> 72 per page </option>
<option value="all"> All per page </option>
</select>
</div>
我尝试使用此脚本,但效果不佳:
jQuery('#limiter').hover(function() {
jQuery(this).attr('size', jQuery('option').length);
}, function() {
jQuery(this).attr('size', 1);
});
答案 0 :(得分:2)
$("#limiter").mouseover(function(){
$(this)[0].size=$(this).find("option").length;
});
$("#limiter").click(function(){
$(this)[0].size=0;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="control">
<select id="limiter" class="limiter-options" data-role="limiter">
<option >Please Select </option>
<option value="24" selected="selected"> 24 per page </option>
<option value="48"> 48 per page </option>
<option value="72"> 72 per page </option>
<option value="all"> All per page </option>
</select>
</div>
答案 1 :(得分:1)
你能模拟一次点击:
$('#limiter').hover(function() {
$(this).click();
});
答案 2 :(得分:1)
这是您最好的解决方案!
您必须更改选择尺寸on mouseover
,然后将其更改回on mouseout
$(document).ready(function() {
$("select.open-on-hover").on("mouseover", function() {
var l = $(this).find("option").length ;
$(this).attr("size", l) ;
}) ;
$("select.open-on-hover").on("mouseout", function() {
$(this).attr("size", 1) ;
}) ;
$("select.open-on-hover").on("click", function() {
$(this).attr("size", 1) ;
}) ;
});
.holer{
position: relative;
margin-right: 50px;
float: left;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="holer">
<select class="open-on-hover">
<option>Opt 1.1</option>
<option>Opt 1.2</option>
<option>Opt 1.3</option>
<option>Opt 1.4</option>
<option>Opt 1.5</option>
</select>
</div>
<div class="holer">
<select class="open-on-hover">
<option>Opt 2.1</option>
<option>Opt 2.2</option>
<option>Opt 2.3</option>
<option>Opt 2.4</option>
<option>Opt 2.5</option>
</select>
</div>
<div class="holer">
<select class="open-on-hover">
<option>Opt 3.1</option>
<option>Opt 3.2</option>
<option>Opt 3.3</option>
<option>Opt 3.4</option>
<option>Opt 3.5</option>
</select>
</div>
答案 3 :(得分:0)
对我来说,你的解决方案有效,因为我将#sorter改为#limiter,因为你没有像分拣机这样的id
match_parent