Хотя эта ссылка отключена, она по-прежнему кликабельна.
<a href="/" disabled="disabled">123n</a>
Могу ли я сделать его не активным, если он отключен? Должен ли я обязательно использовать JavaScript?
Хотя эта ссылка отключена, она по-прежнему кликабельна.
<a href="/" disabled="disabled">123n</a>
Могу ли я сделать его не активным, если он отключен? Должен ли я обязательно использовать JavaScript?
Ответы:
Для гиперссылок нет отключенного атрибута. Если вы не хотите, чтобы что-то связывалось, вам нужно полностью удалить <a>
тег или удалить его href
атрибут.
onclick="return false;"
к тегу привязки и, возможно, добавить title
атрибут, который объясняет, что ссылка недействительна.
href
и выход из <a>
нее не будут соответствовать требованиям ADA.
С помощью css вы отключите гиперссылку. Попробуйте ниже
a.disabled {
pointer-events: none;
cursor: default;
}
<a href="link.html" class="disabled">Link</a>
opacity: 0.5;
Ты можешь использовать:
<a href="/" onclick="return false;">123n</a>
Вы можете использовать одно из этих решений:
<a>link</a>
<a href="javascript:function() { return false; }">link</a>
<a href="/" onclick="return false;">link</a>
<a href="www.page.com" disabled="disabled">link</a>
<style type="text/css">
a[disabled="disabled"] {
pointer-events: none;
}
</style>
Попробуй это:
<a href="javascript:void(0)" style="cursor: default;">123n</a>
У <a>
тега нет disabled
атрибута, это только для <input>
s (и <select>
s и <textarea>
s).
Чтобы «отключить» ссылку, вы можете удалить ее href
атрибут или добавить обработчик кликов, который возвращает false.
href
может сделать курсор не меняется, когда вы наводите курсор на него.
Вы должны удалить <a>
тег, чтобы избавиться от этого.
или попробуйте использовать: -
<a href="/" onclick="return false;">123n</a>
Советы 1: Использование CSS pointer-events: none;
Советы 2: Использование JavaScript javascript:void(0)
(это лучшая практика)
<a href="javascript:void(0)"></a>
Советы 1: Использование Jquery $('selector').attr("disabled","disabled");
Только CSS: это удаляет ссылку из href
.
.disable {
pointer-events: none;
cursor: default;
}
Если у родительского элемента есть pointer-events: none
, дочерний элемент отключится a-tag
следующим образом (требуется, чтобы элемент div закрывал a и не имел ширину / высоту 0):
<div class="disabled">
<a href="/"></a>
</div>
где:
.disabled {
pointer-events: none;
}
$(document).ready(function() {
$('a').click(function(e) {
e.preventDefault();
});
});
Вы можете отключить ссылку, используя JavaScript во время выполнения, используя этот код
$ ('. page-link'). css ("указатель-события", "нет");
В моем случае я использую
<a href="/" onClick={e => e.preventDefault()}>
У меня есть:
<a href="#">This is a disabled tag.</a>
Надеюсь, это поможет вам;)
Мы не можем отключить его напрямую, но мы можем сделать следующее
type="button"
.href=""
атрибут.disabled
атрибут, чтобы он показывал, что его отключили, изменив курсора, и он затемняется.Ниже приведен пример
<?php
if($status=="Approved"){
?>
<a type="button" class="btn btn-primary btn-xs" disabled> EDIT
</a>
<?php
}else{
?>
<a href="index.php" class="btn btn-primary btn-xs"> EDIT
</a>
<?php
}
?>
Я смог достичь желаемого результата с помощью тройной операции ng-href
<a ng-href="{{[condition] ? '' : '/'}}" ng-class="{'is-disabled':[condition]}">123n</a>
где
a.is-disabled{
color: grey;
cursor: default;
&:hover {
text-decoration: none;
}
}
Используйте кнопки и ссылки правильно.
• Кнопки активируют скриптовую функциональность на веб-странице (диалоги, развернуть / свернуть области)
• Ссылки ведут в другое место, либо на другую страницу, либо в другое место на той же странице.
Если вы будете следовать этим правилам, не будет никакого сценария, когда вам нужно отключить ссылку. Даже если вы сделаете ссылку выглядящей визуально отключенной и пустой по клику
<a href="" ng-click="Ctrl._isLinkActive && $ctrl.gotoMyAwesomePage()"
Вы не будете рассматривать возможность доступа, и программы чтения с экрана будут читать его как ссылку, а люди с нарушениями зрения будут продолжать задаваться вопросом, почему эта ссылка не работает.
Если вы используете WordPress, я создал плагин, который может сделать это и многое другое без необходимости знать, как что-то кодировать. Все, что вам нужно сделать, это добавить селектор ссылок, которые вы хотите отключить, и затем выбрать «Отключить все ссылки с этим селектором в новой вкладке». из выпадающего меню и нажмите обновить.
Нажмите здесь, чтобы посмотреть GIF, который демонстрирует это
Вы можете получить бесплатную версию из репозитория плагинов WordPress.org, чтобы попробовать ее.
Вот несколько способов отключить тег:
<a >Link Text</a> remove the href from your anchor tag <a href=”javascript:void(0)”/>Link text</a> put javascript:void(0) in href <a href="/" onclick="return false;">Link text</a> using return false
Как нет отключенных атрибутов для тега привязки. Если вы хотите остановить поведение тега привязки внутри функции jQuery, вы можете использовать строку ниже в начале функции:
$( "a" ).click(function( e ) {
e.preventDefault();
$( "<div>" )
.append( "default " + e.type + " prevented" )
.appendTo( "#log" );
});
Я вижу, что здесь уже есть тонна ответов, но я не думаю, что есть какой-то ясный ответ, который объединяет уже упомянутые подходы в тот, который я нашел для работы. Это делается для того, чтобы ссылка как отображалась отключенной, а также не перенаправляла пользователя на другую страницу.
Этот ответ предполагает, что вы используете jquery и bootstrap , и использует другое свойство, чтобы временно сохранить href
свойство, пока оно отключено.
//situation where link enable/disable should be toggled
function toggle_links(enable) {
if (enable) {
$('.toggle-link')
.removeClass('disabled')
.prop('href', $(this).attr('data-href'))
}
else {
$('.toggle-link')
.addClass('disabled')
.prop('data-href', $(this).prop('href'))
.prop('href','#')
}
a.disabled {
cursor: default;
}
Все, что находится в теге href, будет отображаться в левом нижнем углу окна браузера при наведении на него курсора.
Я лично думаю, что показывать пользователю что-то вроде javascript: void (0) отвратительно.
Вместо этого, оставьте href выключенным, делайте свое волшебство с помощью jQuery / что угодно еще и добавьте правило стиля (если оно вам все еще нужно, чтобы оно выглядело как ссылка):
a {
cursor:pointer;
}
Лучший ответ всегда самый простой. Не нужно никакого кодирования.
Если тег привязки (a) не имеет атрибута href, он является только заполнителем для гиперссылки. Поддерживается всеми браузерами!
<a href="/">free web counters</a><br />
<a "/">free web counters</a>
Вы можете отключить теги привязки, вернув false. В моем случае я использую angular и ng-disabled для аккордеона Jquery, и мне нужно отключить разделы.
Поэтому я создал небольшой фрагмент js, чтобы исправить это.
<a class="opener" data-toggle="collapse"
data-parent="#shipping-detail"
id="shipping-detail-section"
href="#shipping-address"
aria-expanded="true"
ng-disabled="checkoutState.addressSec">
Shipping Address</a>
<script>
$("a.opener").on("click", function () {
var disabled = $(this).attr("disabled");
if (disabled === 'disabled') {
return false;
}
});
</script>
Если вы просто хотите временно отключить ссылку, но оставить ссылку там для включения позже (что я и хотел сделать), я обнаружил, что все браузеры используют первую ссылку. Следовательно, я смог сделать:
<a class="ea-link" href="javascript:void(0)" href="/export/">Export</a>
Вариант, который мне подходит:
<script>
function locker(){
if ($("a").hasClass("locked")) {
$("a").removeClass('locked').addClass('unlocked');
$("a").attr("onClick","return false");
} else {
$("a").css("onclick","true");
$("a").removeClass('unlocked').addClass('locked');
$("a").attr("onClick","");
}
}
</script>
<button onclick="locker()">unlock</button>
<a href="http://some.site.com" class="locked">
<div>
....
<div>
</a>
<a href="/" disabled="true" onclick="return false">123</a>
Просто добавление: это работает в целом, однако это не будет работать, если пользователь отключил JavaScript в браузере.
1) При желании вы можете использовать класс Bootstrap 3 в своем теге привязки, чтобы отключить тег href, после того, как встроенный плагин bootstrap 3 делает
<a href="/" class="btn btn-primary disabled">123n</a>
Или
2) Узнайте, как включить javascript, используя html или js в браузерах. или создайте всплывающее окно с сообщением пользователю, чтобы разрешить использование JavaScript перед использованием веб-сайта