2013-03-29 2 views
2

Код:Bootstrap: Ссылка остается выделенным после нажмите

<h1><a href="#">link</a></h1> 
<script> 
$("a").click(function (e) { 
    e.preventDefault(); 
}); 
</script> 

http://jsfiddle.net/U7Y3r/

После ссылка была нажата, он держит небольшую границу:

border

Я видел это в Firefox и Internet Explorer 10. Не происходит в Chrome или без Bootstrap.

+0

Ни один из ответов не решает проблему! Это не о 'outline'. Речь идет о ссылке, оставленной _фокусированной_. После выполнения 'outline: none;' он просто удаляет контур, но ссылка по-прежнему _focused_. Если кто-нибудь это исправит, сообщите мне. Я ищу что-то подобное. – xyres

+0

@weasel http://stackoverflow.com/a/23140002/941764 – jgillich

ответ

3

Это также возможно (и, возможно, немного чище), чтобы просто удалить фокус линии связи с использованием $.fn.blur:

$("a").click(function (e) { 
    $(this).blur(); 
    e.preventDefault(); 
}); 

http://jsfiddle.net/U7Y3r/4/

1

Это прекрасно работает

$("a").click(function (e) { 
    e.preventDefault(); 
    $("a").css("text-decoration","none"); 
    }); 

http://jsfiddle.net/U7Y3r/1/
, чтобы получить обратно тот же эффект, опять же, http://jsfiddle.net/U7Y3r/2/

+0

И бедные те, кто пытается использовать вкладку навигации на вашей странице .. –

+0

Я был специально ориентирован на этот пример, это может быть отменено с помощью селектора, я был увлечен отвечая сначала, поэтому я не правильно прочитал вопрос, правильный ответ - [Will.i.am] (http://stackoverflow.com/questions/15712271/bootstrap-link-stays-selected-after-click/15712357# 15712357) – VenomVendor

3

Попробуйте это:

$("a").click(function (e) { 
    e.preventDefault(); 
    $(this).css("outline", "none"); 
}); 
1

На самом деле вы Дон» t нужен любой javascript. Вам нужно просто установить «a» на «focus» на «outline: 0;»

/* CSS */ 
    a: focus { outline: 0; } 

    // SCSS 
    a { 
     &:focus { 
      outline: 0; 
     } 
    } 
Смежные вопросы