Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Обновление кода (https://javascript.ru/forum/misc/68570-obnovlenie-koda.html)

Karma05 24.04.2017 13:10

Обновление кода
 
На сайте использовался код с использованием initMouseEvent ,после обновления хрома я решил больше не использовать этот код.Сейчас встала необходимость снова его использовать.Но не могу его обновить до новых стандартов самостоятельно.Буду вам благодарен за любую оказанную помощь.

$("#show").click(function () {
    var element = $("select")[0],
        worked = false;
    if(document.createEvent) { 
        var e = document.createEvent("MouseEvents");
        e.initMouseEvent("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
            worked = element.dispatchEvent(e);
    } else if (element.fireEvent) {
        worked = element.fireEvent("onmousedown");
    }
    if (!worked) { 
        alert("It didn't worked in your browser.");
    }
});

Rise 24.04.2017 14:01

Karma05, .trigger()
$("#show").click(function() {
    $("select").eq(0).trigger("mousedown");
});

Karma05 24.04.2017 14:14

Ваш пример не работает.Надо что бы при нажатие на кнопку срабатывало выпадающие меню <select>

<input type="button" id="show" value="show" />
<select id="myslect">
    <option>nothing</option>
    <option>something</option>
    <option>anything</option>
</select

Karma05 24.04.2017 14:21

Работает в хром до версии 53
<input type="button" id="show" value="show" />
<select id="myslect">
    <option>nothing</option>
    <option>something</option>
    <option>anything</option>
</select>


$("#show").click(function () {
    var element = $("select")[0],
        worked = false;
    if(document.createEvent) { // chrome and safari
        var e = document.createEvent("MouseEvents");
        e.initMouseEvent("mousedown", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        worked = element.dispatchEvent(e);
    }
    if(!worked) { // unknown browser / error
        alert("It didn't worked in your browser.");
    }
});


Часовой пояс GMT +3, время: 16:26.