Jquery 代码对我来说很完美,但只适用于 chrome

Jquery code is perfect for me but only works in chrome

所以我在一个 Whosebug 论坛中找到了这个 fiddle (http://jsfiddle.net/EgCW6/),但我再也找不到那个论坛了。我正在使用确切的代码

<div class="lang"> 
  <select id="language" class="selectOptionHeader">
                            <option>United Kingdom</option>
                          <option>Austria</option>
                          <option>Romania</option>
                     </select>
                </div>
<script>
                $(".lang").append("<div onclick='runThis2()' class='arrow2'></div>");

                (function () {
                    showDropdown = function (element) {
                        var event;
                        event = document.createEvent('MouseEvents');
                        event.initMouseEvent('mousedown', true, true, window);
                        element.dispatchEvent(event);
                    };
                    window.runThis2 = function () {
                        var dropdown = document.getElementById('language');
                        showDropdown(dropdown);
                    };
                 })();
                </script>

这段代码是我需要的完美解决方案。但是,它仅适用于 chrome。我需要让它在其他浏览器中工作,但我似乎找不到解决方案。要么没有解决方案,要么我越来越笨了。

编辑: 当您单击绿色框时,它也应该起作用。 如果有更好的另一种写作方式,请帮助我。非常感谢您的帮助。

我调整了它,所以 jquery 在头部并且没有加载 'ondomready' 我还发现它 运行 跨浏览器使用 jquery 2.02 (+) 但不是下面的任何内容。没有错误。我用径向渐变替换了箭头 class。这是一个fiddle

$("#dropdown").click(function() {
  showDropdown = function(element) {
    var event;
    event = document.createEvent('MouseEvents');
    event.initMouseEvent('mousedown', true, true, window);
    element.dispatchEvent(event);
  };

  window.runThis1 = function() {
    var dropdown = document.getElementById('dropdown');
    showDropdown(dropdown);
  };

  window.runThis2 = function() {
    var dropdown = document.getElementById('dropdown2');
    showDropdown(dropdown);
  };
});
.drop {
    float: left;
    width: 180px;
    height: 34px;
    overflow: hidden;
    background-color: #D0D0D0;
    
    background-image: url(http://www.msskincarebeautysalon.com/images/downArrow.png), -webkit-radial-gradient(top left, circle, rgba(192, 192, 192, 0.3) 80%, rgba(0, 255, 0, 0.5) 20%);
    background-image: url(http://www.msskincarebeautysalon.com/images/downArrow.png), -moz-radial-gradient(top left, circle, rgba(192, 192, 192, 0.3) 80%, rgba(0, 255, 0, 0.5) 20%);
    background-image: url(http://www.msskincarebeautysalon.com/images/downArrow.png), -ms-radial-gradient(top left, circle, rgba(192, 192, 192, 0.3) 80%, rgba(0, 255, 0, 0.5) 20%);
    background-image: url(http://www.msskincarebeautysalon.com/images/downArrow.png), -o-radial-gradient(80% 20%, circle, rgba(192, 192, 192, 0.3), rgba(0, 255, 0, 0.5));
    background-image: url(http://www.msskincarebeautysalon.com/images/downArrow.png), radial-gradient(top left, circle, rgba(192, 192, 192, 0.3) 80%, rgba(0, 255, 0, 0.5) 20%);
    background-repeat: no-repeat, repeat;
    background-position: right center;

    height: auto;
    
    border-radius: 4px;
    border:1px solid #000;
    box-shadow: 0 1px 3px #f00;
    font-size:14px;
    margin:0 10px;
    position:relative;
}
.drop select {
    background: transparent;
    width: 100%;
    padding: 5px;
    font-size: 14px;
    border: 0;
    border-radius: 0;
    height: 34px;
    -webkit-appearance: none;
    color: #f00;
    cursor: pointer;
}
.drop option {
    text-align: center;
    margin: 0 auto;
    color: #000;
    cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<div class="drop">
    <select id="dropdown">
        <option value="categ1">Category1</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
    </select>
</div>
<div class="drop">
    <select id="dropdown2">
        <option value="categ1">Category1</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
    </select>
</div>