Отключить наведение на IE? - PullRequest
0 голосов
/ 07 апреля 2019

Есть ли способ отключить эффект наведения только в IE? Я знаю, что могу отключить свойство перехода с помощью "-ms-transition-property: none !important;", и это работает нормально, но мне бы хотелось, чтобы в IE не было вообще никакого эффекта наведения. Причина, по которой я хочу это сделать, заключается в том, что у меня есть элемент, который имеет "transform: scale(1.05)" в Chrome, и он выглядит великолепно, но в IE переходы выглядят ужасно, я просто не хочу удалять его везде из-за IE.

1 Ответ

0 голосов
/ 03 мая 2019

Вы можете добавить класс CSS и поместить в него свойство transform, затем с помощью JQuery проверить, является ли браузер браузером IE, а затем, если браузер браузером IE, использовать метод addclass для добавления связанного стиля CSS, иначе используя метод removeclass для удаления стиля CSS из элементов.

пожалуйста, обратитесь к следующему образцу:

HTML-код:

<body class="gethover">
<div class="box"></div>

Код CSS:

<style>
    .box {
        width: 200px;
        height: 200px;
        margin: 200px auto;
        background-color: cornflowerblue;
        position: relative;
    }

    .gethover .box:hover {
        transform: scale(1.05);
    }

</style>

Код JQuery:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript">
    $(function () {
        if (!!window.ActiveXObject || "ActiveXObject" in window) {
            $('body').removeClass('gethover');
        }
        else {
            $('body').addClass('gethover');
        }
    });
</script>
...