`

IE IE and Firefox compatible javascript to enable or disable an anchor tag

阅读更多
http://geekswithblogs.net/TimH/archive/2006/01/19/66396.aspx

IE supports provides a half-baked implementation of the non-standard attribute 'disabled' on anchor tags (ie it changes it's color -even though it does not actually disable the anchor (if it has an href value).  Firefox does not provide any support for it.

To add full 'disable' functionality to both browsers there are a couple of work arounds (hacks):

    * Override the onclick event of the anchor (to do nothing) and override the visual settings.

or, more simply

    * Add or remove the href attribute (both browsers will enable/disable the anchor with this method).

      This causes both browsers to remove hyperlink behaviour: remove the underline, remove the hover mouse pointer (hand) and don't color the text blue.  It does not, however cause the anchor to be greyed out (which you can easily do if you wish).

      To allow this to work you need to store the existing href value - I just add another (non standard html) attribute eg href_bak.

      Eg:

function disableAnchor(obj, disable){
  if(disable){
    var href = obj.getAttribute("href");
    if(href && href != "" && href != null){
       obj.setAttribute('href_bak', href);
    }
    obj.removeAttribute('href');
    obj.style.color="gray";
  }
  else{
    obj.setAttribute('href', obj.attributes['href_bak'].nodeValue);
    obj.style.color="blue";
  }
}
分享到:
评论

相关推荐

    JavaScript侦听Firefox4中扩展​​的启用/禁用事件

    在这个场景下,标题提及的“JavaScript侦听Firefox4中扩展的启用/禁用事件”是指利用JavaScript编程语言来监听Firefox浏览器扩展(Add-ons)的状态变化,即扩展被用户启用或禁用的情况。这种功能对于那些依赖于特定...

    firefox插件开发,firefox plugin 开发 firefox 扩展 开发

    - 调整Firefox配置项以支持更好的插件调试,例如`javascript.options.showInConsole`、`nglayout.debug.disable_xul_cache`、`browser.dom.window.dump.enabled`、`javascript.options.strict`和`extensions....

    ulps_enable_disable.zip

    标题 "ulps_enable_disable.zip" 暗示了这是一个与启用或禁用ULPS相关的软件配置包。ULPS,全称Ultra Low Power State(超低功耗状态),是计算机硬件,特别是显卡中的一种节能技术。它允许设备在不活动时进入一种极...

    FIREFOX 52.0.2 渗透便携版 BETA8

    Disable WebRTC js switch Adblock Plus header spy http header mangler IE Tab V2 HackSearch Advanced Dork https://addons.mozilla.org/zh-CN/firefox/addon/advanced-dork/ Exif Viewer Web Developer ...

    disable-cors:一个 Firefox 扩展,将禁用当前选项卡的跨域资源共享 (CORS)

    "disable-cors"是一个针对Firefox浏览器的扩展,它允许用户临时禁用当前选项卡的CORS策略。这对于开发人员来说非常有用,因为他们可以更容易地测试自己的API或者跨域请求,而无需设置复杂的CORS头或者使用代理服务器...

    enable disable home

    enable and disable "HOME" button in android 4.0.3 above the version 4.0.3,we should modify the frameworks detail is described in the Enable_Disable_Home.rar

    Windows 系统资源(Hardware,Driver)Scan,Enable,Disable

    devcon.exe enable <设备ID> ``` 将`<设备ID>`替换为要启用的设备的ID,这个ID可以在设备管理器中找到。 3. 禁用硬件或驱动程序: ``` devcon.exe disable <设备ID> ``` 同样,替换`<设备ID>`为要禁用的设备...

    Disable JavaScript2.3.1_0 (2).zip

    1. **浏览器设置**:某些浏览器如Firefox允许用户在设置中禁用JavaScript。这样,当通过浏览器直接访问网页时,JavaScript将不会执行,展示的是原始HTML。但这对爬虫来说并不适用,因为爬虫并不使用浏览器。 2. **...

    firefox插件离线安装器

    firefox插件离线安装器,在firefox中打开这个文件,点击浏览按钮,选择下载的firefox插件,再点击install按钮即可安装。

    Linux操作系统上五十个最佳的FireFox扩展插件

    - **Firefox View**:在IE中使用Firefox打开当前页面,适用于测试兼容性或特殊情况下的需求。 #### 三、文件下载管理 - **FlashGot**:一款多线程下载工具,可以显著提高下载速度。 - **PDF Download**:提供多种...

    Mactype不能渲染Firefox字体该怎么解决?.docx

    标题中的问题直指Mactype在Firefox上的字体渲染问题,这个问题通常出现在Windows用户试图通过Mactype提升浏览器内的字体显示质量但未能成功的情况。Mactype是一款流行于Windows平台的字体渲染工具,它可以改善系统...

    selenium浏览器驱动,打开firefox42、Chrome60两款浏览器的驱动

    在这个特定的场景中,我们关注的是如何使用Selenium来驱动Firefox 42和Chrome 60这两款浏览器。 首先,让我们详细了解一下Selenium浏览器驱动,也被称为WebDriver。WebDriver是一个接口,它允许编程语言(如Python...

    IPV4,IPV6的Enable和Disable批处理命令脚本文件

    ### IP版本控制脚本知识点详解 #### 一、概述 在计算机网络中,IP协议(Internet Protocol)是用于标识网络中的设备并使这些设备能够互相通信的重要协议之一。随着技术的发展,IPv4(Internet Protocol version 4...

    火狐Firefox 46.0.zip

    火狐浏览器全插件版,hackbar,agent47,cookies manager,disable webrtc,firebug,flagfox,foxyproxy standard,groupspeed,httpfox,js switch,jsonview,live http headers,modify headers,poster,sql inject me,

    ulps-enable-disable

    在Windows 10操作系统中,ULPS(Ultra-Low Power Standby)是一种节能技术,旨在降低设备在待机状态下的功耗。然而,有时ULPS可能会导致系统出现一些不期望的问题,比如开机黑屏。本篇文章将深入探讨如何通过手动和...

    步进电机控制IC

    enable or disable the deviceindependentlyof the in-put signals. The emitters of the lower transistors of each bridge are connected together and the corre-sponding external terminal can be used for the...

    Android代码-DualSim Reminder

    schedule an alarm that reminds you to enable or disable work SIM at shceduled times (for example at 9am when you go to work and at 6pm when you go home) a widget lets you open Dual SIM settings ...

    .net WPF 实现图标按钮,点击图标enable/disable,并触发相应功能

    WPF实现图标按钮的enable 和disable功能,单击图标disable该功能,图标也跟着变化,再单击一次,图标和功能enable. .net framework 和.net core框架都能用,该Demo使用的是.net core的框架,修改引入的依赖项就可以...

    GoHo Network Adapter Enable - Disable:需要轻松启用和禁用网络适配器吗?-开源

    《GoHo Network Adapter Enable - Disable:一款开源的网络适配器管理工具》 在现代计算机系统中,网络适配器是连接到网络的关键组件。它允许计算机与互联网或其他网络设备进行通信。有时,用户可能需要临时禁用...

    Disable Copy and Paste using Javascript.zip

    标题“Disable Copy and Paste using Javascript.zip”提示我们这个压缩包包含了一个使用JavaScript来禁用页面复制和粘贴功能的示例或教程。JavaScript是一种广泛应用于网页开发的编程语言,它允许开发者实现动态...

Global site tag (gtag.js) - Google Analytics