在IE8中打开/单击菜单时,jQueryUI SelectMenu跳转到页面顶部

时间:2015-04-20 19:25:25

标签: javascript jquery jquery-ui

我将jQueryUI SelectMenu与themeroller一起使用,并且它在Chrome和Firefox中运行良好。但是,在IE8(我需要的最低版本和第一个IE测试版)中,当我点击菜单时,屏幕跳转到页面顶部,好像我有一个书签/ href到页面顶部(我不&# 39; t)的

当我在Firefox或Chrome中向下滚动页面时,然后点击选择菜单,出现下拉列表,我可以进行选择。当我在IE8中重复这些步骤时,单击选择菜单时页面会跳到顶部。

有人知道这是否是SelectMenu的错误和/或是否有任何方法可以防止它发生?

我的代码非常基本,如果有人注意到我在SelectMenu中实现了错误,我会提供它。我正在使用Powershell生成内容(在< generated_content' div中),以防对任何人都很重要。这是HTML的片段:

<div class='wrapper'>
<h1>Report</h1>
<h3>Report Run Date: *Date*</h3>
<hr class='title_separator'>

<div class='selector'></div>

<div class='generated_content'></div>

</div>

这是jQuery的片段:

$(document).ready(function() {
    $('.selector').append("<span id='space'>Select an item</span>: ");
    $('.selector').append("<select label='Select an item:' id='select_item'> </select>");
    $('#select_item').append("<option selected disabled value=''>  </option>");
    $('#select_item').append("<option value='all'>All</option>");

    $('#select_item').selectmenu()

    var changeSelect = function(event, item) {
        $(this).trigger('change', item);
    };

    $('#select_item').selectmenu({change:changeSelect});

    $('#select_item').change(function() {
        $('#select_item option:selected').each(function() {
            $('.generated_content').hide();

            if ($(this).attr("value")=="all") {
                $('.generated_content').show();
            }
            else {
                $('#' + $(this).val()).show();
            }       
        });
    });
});

$(window).load(function() {
    $('#selector').selectmenu('refresh');
});

jQuery版本

我目前正在使用jQuery 1.11.2和jQueryUI 1.11.3。我还尝试了jQuery 1.9.0和jQueryUI 1.10.0。

感谢。

0 个答案:

没有答案