Я занимаюсь разработкой веб-приложения. Я пытаюсь отключить большую часть поведения iOS Safari по умолчанию для ссылок, поэтому я установил свойство CSS «-webkit-touch-callout» для ссылок на «none». Тем не менее, я все еще замечаю, что если я удержу палец на ссылке в течение секунды или около того, затем перетащить ее, а затем отпустить, ссылка откроется в новом окне. Я не хочу такого поведения. Я бы хотел, чтобы он открывался в том же окне или вообще ничего не делал. Кто-нибудь знает, как это сделать?
РЕДАКТИРОВАТЬ: Я использую jQuery, поэтому можно использовать функции обработки событий jQuery, если это упростит вещи.
РЕДАКТИРОВАТЬ 2: Для некоторых ссылок я использую обработчики, чтобы переопределить их поведение по умолчанию. Например:
$(".categoryList a").live("click", function(e) {
e.preventDefault();
$.get(
"someOtherUrl",
{someVariable: "someValue"},
function(result) {
$(".result").html(render(result));
}
);
});
Мой настоящий код более сложен, чем этот, но я хочу сказать, что я переопределяю действие по умолчанию для щелчка некоторых ссылок и любое решение, которое я использую для решения этой проблемы, не должно мешать этим обработчикам . Решение Sanooj не работает для моих целей, потому что назначение «window.location» всегда перенаправляет браузер независимо от того, есть ли у меня какие-либо обработчики для предотвращения этого поведения. Возможно, мне не следует использовать ссылки для этой цели, но именно так было приложение до того, как я начал над ним работать, и изменение этого было бы большим проектом. Мне интересно, есть ли более легкий и простой способ исправить это.