>웹 프론트엔드 >JS 튜토리얼 >hyperlink_javascript 스킬의 비활성화 속성을 사용한 예

hyperlink_javascript 스킬의 비활성화 속성을 사용한 예

WBOY
WBOY원래의
2016-05-16 16:40:432745검색

하이퍼링크의 비활성화 속성을 true 및 false로 설정하여 하이퍼링크를 클릭할 수 있는지 여부를 결정할 수 있습니다

예:

<a herf='http://www.baidu.com' onclick='return click(this);' disabled='ture'>bai du</a>

위 내용은 바이두의 하이퍼링크가 적용되는 것을 원하지 않으나, 클릭에 대한 제한이나 판단을 하지 않으면 바이두를 클릭할 때 자연스럽게 바이두 페이지로 이동한다는 의미입니다. HTML의 하이퍼링크 속성
하이퍼링크 사용 가능 여부를 결정하기 위해 다음 js 제약 조건을 추가할 수 있습니다

<script language='javascript'> 
function click(obj) 
{ 
if(obj.disabled) 
{ 
return false; 
} 
return ture; 
} 
</script>

Microsoft에서 제공하는 다음 버그 솔루션:

전역 변수의 도움으로 다른 버튼을 사용하여 비활성화된 속성을 변경하면 속성 비활성화 효과를 얻을 수 있습니다.;

버그: DISABLED 속성이 더 이상 하이퍼링크를 비활성화하지 않습니다.
DISABLED 속성이 True로 설정되어 있어도 하이퍼링크는 다음
에 있습니다. 539511732eabae7e2bb6b9581414c45f오늘 어디로 가고 싶으신가요?5db79b134e9f6b82c0b36e0489ee08ed 🎜> 사용자는 여전히 하이퍼링크를 클릭할 수 있으며 Internet Explorer는 선택한 페이지로 이동합니다.

이 문제를 해결하려면 현재 실행 컨텍스트에 따라 true 또는 false를 반환하도록 하이퍼링크의 onclick 이벤트를 설정하세요. 다음 코드는 버튼 클릭에 따라 전역 Microsoft JScript 변수의 값을 true 또는 false 로 설정합니다. 대상 하이퍼링크 개체의 DISABLED 속성이 업데이트되어 해당 비활성화 상태를 페이지의 다른 개체 및 스크립팅 기능에 제대로 전달할 수 있습니다.


<html> 
<head> 
<title>Workaround for DISABLED Attribute Problem</title> 
<SCRIPT> 
var canNav = false; 
function canNavigate() { 
return canNav; 
} 
function load() { 
document.all("btn1").innerText = "Link status == " + canNav; 
} 

function setNavigate(linkObj, canNavParam) { 
if (linkObj != null) { 
if (canNavParam == false) { 
linkObj.disabled = true; 
} else { 
linkObj.disabled = false; 
} 
canNav = canNavParam; 
} 
} 

function updateBtnStatus(btnName) { 
var btn = document.all(btnName); 
if (btn != null) { 
document.all(btnName).innerText = "Link status == " + canNav; 
} 
} 
</SCRIPT> 

</head> 
<body onload="load();"> 
<a id="lnk1" disabled=true href="http://www.microsoft.com/" rel="external nofollow" rel="external nofollow" onclick="return canNavigate();">Click here</a><p> 
<button id=btn1 onclick="setNavigate(document.all('lnk1'), !(canNav));updateBtnStatus('btn1');"> 
</button> 
</body> 
</html>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.