Вкладка в приложении asp.net

Я разработал приложение asp.net. Если пользователь просматривает поля моего приложения, а затем продолжается до конца, вкладка продолжается вне моего приложения. Это включает в себя поле, где пользователь вводит URL, а затем некоторые другие, в том числе поле Google для ввода критериев поиска. Затем, в конце концов, он возвращается к первому полю моего приложения.

Как ограничить вкладки только для моего приложения?

2 ответа

Самый простой способ справиться с этим - НЕ делать этого. Не изменяйте способ взаимодействия пользователя со своими приложениями. Это то, что вы не имеете и не должны контролировать. Клавиша TAB имеет четко определенную задачу интерфейса пользователя, которая работает очень предсказуемым образом. Я не использовал все доступные браузеры, но я уверен, что в 99% из них клавиша табуляции позволяет пользователю переключаться между полями ввода на странице и на панели инструментов браузера. Если вы пойдете и измените это, вы только расстроите пользователей. А как насчет пользователей, которые не используют мышь? А как насчет инвалидов?

Пожалуйста, переосмыслите свое дизайнерское решение здесь.

Единственное, о чем я могу думать, это если вы написали какой-нибудь javascript, который мог бы поймать onkeydown в последнем поле на вашей странице проверьте, является ли оно клавишей табуляции, а затем снова установите фокус на первое поле:

<body>
    <input id="field1" /><br />
    <input id="field2" /><br />
    <input id="field3" onkeydown="return loopBack();" />
</body>

<script type="text/JavaScript">
    function loopBack() {
        if (event.keyCode == 9) {
            var field1 = document.getElementById("field1");
            field1.focus();
            field1.select();
            return false;
        }
    }
</script>
Другие вопросы по тегам