[JQUERY] 어떻게 활성화 또는 jQuery를 사용하여 앵커를 해제하는 방법?
JQUERY어떻게 활성화 또는 jQuery를 사용하여 앵커를 해제하는 방법?
해결법
-
1.지정된 HREF를 다음에서 앵커를 방지하기 위해, 나는에서 preventDefault ()를 사용하는 것이 좋습니다 것입니다 :
지정된 HREF를 다음에서 앵커를 방지하기 위해, 나는에서 preventDefault ()를 사용하는 것이 좋습니다 것입니다 :
// jQuery 1.7+ $(function () { $('a.something').on("click", function (e) { e.preventDefault(); }); }); // jQuery < 1.7 $(function () { $('a.something').click(function (e) { e.preventDefault(); }); // or $('a.something').bind("click", function (e) { e.preventDefault(); }); });
보다:
http://docs.jquery.com/Events/jQuery.Event#event.preventDefault.28.29
또한 SO에이 앞의 질문을 참조하십시오
jQuery를 무력화 링크
-
2.내가 현재 일하고 있어요 응용 프로그램은 자바 스크립트와 함께 CSS 스타일로 않습니다.
내가 현재 일하고 있어요 응용 프로그램은 자바 스크립트와 함께 CSS 스타일로 않습니다.
a.disabled { color:gray; }
내가 링크 I 호출을 사용하지 않을 그런 때마다
$('thelink').addClass('disabled');
그런 다음에 대한 클릭 핸들러에서 'thelink'나는 항상 체크 제일 먼저 실행 태그
if ($('thelink').hasClass('disabled')) return;
-
3.나는 더 나은 여기에 좋아하는 답변을 찾을
나는 더 나은 여기에 좋아하는 답변을 찾을
다음과 같습니다 :
$(document).ready(function(){ $("a").click(function () { $(this).fadeTo("fast", .5).removeAttr("href"); }); });
href 속성을 설정 포함 것이다 활성화
$(document).ready(function(){ $("a").click(function () { $(this).fadeIn("fast").attr("href", "http://whatever.com/wherever.html"); }); });
이렇게하면 앵커 요소는 일반 텍스트, 그 반대가되는 모양을 제공합니다.
-
4.
$("a").click(function(){ alert('disabled'); return false; });
-
5.나는 더 좋은 솔루션이 클릭에 대한 검사에 앵커 장애인 데이터 속성을 설정하는 것입니다 생각합니다. 우리가 예를 들어, 때까지 일시적으로 닻을 해제 할 수 있습니다이 방법 자바 스크립트는 아약스 전화 또는 일부 계산이 완료됩니다. 우리가 그것을 해제하지 않으면 우리는 빨리에게 바람직하지 않다 몇 번을 클릭 할 수 있습니다 ...
나는 더 좋은 솔루션이 클릭에 대한 검사에 앵커 장애인 데이터 속성을 설정하는 것입니다 생각합니다. 우리가 예를 들어, 때까지 일시적으로 닻을 해제 할 수 있습니다이 방법 자바 스크립트는 아약스 전화 또는 일부 계산이 완료됩니다. 우리가 그것을 해제하지 않으면 우리는 빨리에게 바람직하지 않다 몇 번을 클릭 할 수 있습니다 ...
$('a').live('click', function () { var anchor = $(this); if (anchor.data("disabled")) { return false; } anchor.data("disabled", "disabled"); $.ajax({ url: url, data: data, cache: false, success: function (json) { // when it's done, we enable the anchor again anchor.removeData("disabled"); }, error: function () { // there was an error, enable the anchor anchor.removeData("disabled"); } }); return false; });
나는 jsfiddle 예를했다 : http://jsfiddle.net/wgZ59/76/
-
6.선택한 답변 좋지 않다.
선택한 답변 좋지 않다.
포인터 이벤트 CSS 스타일을 사용합니다. (AS 라샤드 Annara 제안)
참조 MDN https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events. 그것의 대부분의 브라우저에서 지원.
당신은 다음과 같은 글로벌 CSS 규칙이있는 경우 앵커에 대한 간단한 추가 "장애인"속성은 일을 할 것입니다 :
a[disabled], a[disabled]:hover { pointer-events: none; color: #e1e1e1; }
-
7.라인 아래를보십시오
라인 아래를보십시오
$("#yourbuttonid").attr("disabled", "disabled"); $("#yourbuttonid").removeAttr("href");
사촌, 당신은 또한 HREF 제거해야합니다 있도록 비활성화 태그의 HREF가 작동하더라도.
당신은 선 아래 시도를 가능하게하려는 경우
$("#yourbuttonid").removeAttr("disabled"); $("#yourbuttonid").attr("href", "#nav-panel");
-
8.그것은 반환 허위로 간단입니다;
그것은 반환 허위로 간단입니다;
전의.
jQuery("li a:eq(0)").click(function(){ return false; })
또는
jQuery("#menu a").click(function(){ return false; })
-
9.
$('#divID').addClass('disabledAnchor');
CSS 파일에서
.disabledAnchor a{ pointer-events: none !important; cursor: default; color:white; }
-
10.
$("a").click(function(event) { event.preventDefault(); });
이 메서드를 호출 할 경우, 이벤트의 기본 동작은 트리거되지 않습니다.
-
11.이 페이지의 모든 상호 작용을 차단하려는 경우 당신은 jQuery를 BlockUI 플러그인을보고 할 수 있습니다
이 페이지의 모든 상호 작용을 차단하려는 경우 당신은 jQuery를 BlockUI 플러그인을보고 할 수 있습니다
-
12.당신은 정말 당신이 그 (것)들을 사용하지 원하는 방법, 또는 비활성화의 원인이 될지를 지정하지 않았다.
당신은 정말 당신이 그 (것)들을 사용하지 원하는 방법, 또는 비활성화의 원인이 될지를 지정하지 않았다.
첫째, 당신은 당신이 jQuery의 속성 기능을 사용하고, 그 기능은 클릭, 또는 문서의 로딩과 같은 이벤트에 일어날 것이다 그것을 위해, 장애인에 값을 설정하는 방법을 알아 내야합니다.
-
13.상황에서는 당신은 앵커 태그 내의 텍스트 나 HTML 콘텐츠를 삽입해야합니다,하지만 당신은 단순히 요소 (클릭하면 모든 작업이 당신이 때문에 매기기 링크가 비활성화 상태로 할 때처럼 모든 일에 찍은 싶지 않은 경우 현재 페이지), 단순히 HREF를 잘라. ;)
상황에서는 당신은 앵커 태그 내의 텍스트 나 HTML 콘텐츠를 삽입해야합니다,하지만 당신은 단순히 요소 (클릭하면 모든 작업이 당신이 때문에 매기기 링크가 비활성화 상태로 할 때처럼 모든 일에 찍은 싶지 않은 경우 현재 페이지), 단순히 HREF를 잘라. ;)
<a>3 (current page, I'm totally disabled!)</a>
@ 마이클 - 초원에 의한 대답이 나를 밀고 있지만, jQuery를 / JS로 작업에 / 당신은 여전히이 곳에 자신은 여전히 시나리오를 해결했다. 당신이 HTML 자체를 작성을 제어 할 수있는 경우이 솔루션은 순수 HTML의 하나이며이 경우에는 단순히 X-보내고 href를 태그하는 것은, 당신이해야 할 모든입니다!
href를 유지의 jQuery finagling없이 다른 솔루션은 HREF에 #을 넣어 당신을 필요로하지만 정상에 바운스로 인해 페이지, 당신은 그냥 비활성화 된 일반 싶어요. 아니면이 십오 일에 따라 잘못된 HTML, 그것은 비워두고 있지만, 브라우저에 따라, 아직 물건을 위로 점프처럼 않는 것으로합니다. 그러나 외관상으로는 A 태그는 HREF없이 완전히 유효한 HTML입니다.
마지막으로, 당신은 말할지도 모른다 : 좋아, 왜 단지보다 아예 태그 덤프하지? 자주는 태그는 CSS 프레임 워크의 목적을 스타일링하거나 부트 스트랩의 매기기처럼 사용하고 제어에 사용 할 수 없기 때문에 :
http://twitter.github.io/bootstrap/components.html#pagination
-
14.위의 답변의 조합 그래서, 나는이 함께했다.
위의 답변의 조합 그래서, 나는이 함께했다.
a.disabled { color: #555555; cursor: default; text-decoration: none; } $(".yourClass").addClass("disabled").click(function(e){ e.preventDefault();
-
15.당신이 앵커 태그로 작동하는 데 필요하지 않은 경우, 나는 전혀 그것을 대체하는 것을 선호합니다. 예를 들면 앵커 태그가 같은 경우
당신이 앵커 태그로 작동하는 데 필요하지 않은 경우, 나는 전혀 그것을 대체하는 것을 선호합니다. 예를 들면 앵커 태그가 같은 경우
<a class="MyLink" href="http://www.google.com"><span>My</span> <strong>Link</strong></a>
대신 링크의 표시 텍스트를 필요로 할 때 당신이 할 수있는 JQuery와 다음 사용.
var content = $(".MyLink").text(); // or .html() $(".MyLink").replaceWith("<div>" + content + "</div>")
이런 식으로 그래서, 우리는 단순히 div 태그로 앵커 태그를 대체 할 수 있습니다. 이뿐만 아니라 (단 2 선) 훨씬 쉽고 의미 론적으로 올바른 (그러므로 우리는 링크가 안 지금 링크를 필요로하지 않기 때문에)
-
16.비활성화 또는 장애인 속성 모든 요소를 사용합니다.
비활성화 또는 장애인 속성 모든 요소를 사용합니다.
// Disable $("#myAnchor").prop( "disabled", true ); // Enable $( "#myAnchor" ).prop( "disabled", false );
from https://stackoverflow.com/questions/1164635/how-to-enable-or-disable-an-anchor-using-jquery by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 어떻게 해제 앵커에 "점프"페이지를로드 할 때? (0) | 2020.10.18 |
---|---|
[JQUERY] Base64로로 변환 이미지 URL (0) | 2020.10.18 |
[JQUERY] jQuery를 처리되지 않는 형식 오류는 : 물체 [대물 윈도우]의 속성 '$'는 함수가 아니다 (0) | 2020.10.17 |
[JQUERY] AJAX는 크롬에 / DELETE 대신 GET / POST / PUT의 옵션을 전송? (0) | 2020.10.17 |
[JQUERY] 요소를 전환하는 기본 jQuery를 기능이 있습니까? (0) | 2020.10.17 |