html5中文学习网

您的位置: 首页 > 网站及特效实例 > javascript特效 » 正文

超链接的禁用属性Disabled使用示例_javascript技巧_

[ ] 已经帮助:人解决问题

可以设置超链接的Disabled属性的true 和 false来确定超链接是不是能点击6UmHTML5中文学习网 - HTML5先行者学习网

例如:6UmHTML5中文学习网 - HTML5先行者学习网

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

上面的意思是不想让bai du的超链生效,但在click不做任何约束和判断的话,但点击bai du的时候自然就会跳转到百度页面,这就是html中超链接禁用属性的bug 6UmHTML5中文学习网 - HTML5先行者学习网
可以添加下面js约束来判断超链接是否可以使用 6UmHTML5中文学习网 - HTML5先行者学习网
6UmHTML5中文学习网 - HTML5先行者学习网

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

6UmHTML5中文学习网 - HTML5先行者学习网

下面的微软给出的bug解决方案:6UmHTML5中文学习网 - HTML5先行者学习网

借助了全局变量,使用别的按钮来改变disabled的属性,来得到禁用属性的效果.;6UmHTML5中文学习网 - HTML5先行者学习网

BUG: DISABLED 属性不在禁用超链接 6UmHTML5中文学习网 - HTML5先行者学习网
尽管 DISABLED 属性设置为 True 一个超链接为在以下, 6UmHTML5中文学习网 - HTML5先行者学习网
<a DISABLED="true" href="http://www.microsoft.com/" rel="external nofollow" rel="external nofollow" >Where do you want to go today?</a> 6UmHTML5中文学习网 - HTML5先行者学习网
用户仍可以单击超链接,然后 Internet Explorer 导航到所选页。6UmHTML5中文学习网 - HTML5先行者学习网

若要解决此问题,设置返回 true 或 false 根据当前的执行上下文的超链接的 onclick 事件。 在下面的代码将全局的 Microsoft JScript 变量的值设置为 true 或 false ,根据按钮单击中。 目标超链接对象的 DISABLED 属性被更新,以便它能够正确通信其禁用的状态,其他对象并编写脚本页上的功能。 6UmHTML5中文学习网 - HTML5先行者学习网
6UmHTML5中文学习网 - HTML5先行者学习网

<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>
(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助