如何使用javascript或jquery隐藏悬停时的图像路径

时间:2013-07-15 13:36:00

标签: javascript jquery html browser

任何知道答案的人都请给我建议这样做。我正在使用mozilla firefox浏览器,当我将鼠标悬停在图像上时,我会得到它所在位置的url路径(mozilla的左下角)  这是截图: enter image description here

是否可以隐藏href路径。 任何建议都会很棒。

5 个答案:

答案 0 :(得分:1)

假设状态栏显示href目标,您可以删除href属性onload并调用window.location而不是:(jQuery):

$(function() {
    $('a[href]').each(function() {
        var href = this.href;
        $(this).removeAttr('href').css('cursor','pointer').click(function() {
            window.location = href;
        });
    });
});

请注意,即使没有cursor:pointer属性,我也添加了href,使其行为类似于链接。移动网站上经常使用相同的技术,以防止移动浏览器在浏览ajax时降低其地址栏。

另一种更笨拙的方法是在锚点顶部添加占位符div,抓取锚点的href并使用window.location onclick进行导航。

无论哪种方式,快速查看源或控制台都会显示目的地。

答案 1 :(得分:0)

我认为如果删除href属性,并添加onClick =“location('your url')”它将隐藏href路径。 例如:

<script>
function changeLocation(url){
   window.location.assign(url);
}
</script>
<a onClick = "changeLocation('http://www.w3schools.com')">Link</a>

答案 2 :(得分:0)

您可以通过调用在浏览器中打开图片网址的点击方法(存储在data-href而不是href中的网址)来执行此操作:

http://jsfiddle.net/mattydsw/TYSnB/

<a data-href="http://somewhere.com">new</a>

$('a[data-href]').on('click', function(e) {
    e.preventDefault();
    window.location.href = $(this).data('href');
});

修改

但是,其余的“标准”行为也会丢失,例如:在新标签页中打开,复制链接,搜索引擎抓取。

答案 3 :(得分:0)

我看到你已经有了一个答案,但如果你想在新的弹出/窗口中打开点击那么它没关系,但如果你想在同一页面打开那么会发生什么?如果您使用母版页并点击链接,就像这个新页面加载内容占位符区域而不是发生什么?

如果你愿意,我有一个解决方案。

我们可以在global.asax页面中使用system.webrouting.routecollection隐藏全部或任何页面,  见下面的例子:

void Application_Start(object sender, EventArgs e)
    {      
        RegisterRoutes(System.Web.Routing.RouteTable.Routes);
    }

void RegisterRoutes(System.Web.Routing.RouteCollection routes)
    {
        routes.Clear();
        routes.MapPageRoute("page1", "dir1/{country}/{State}", "~/page1.aspx");
}

这会对你有所帮助。

答案 4 :(得分:-1)

<a onclick="window.open('http://whatever', '_self');"><img bla bla bla ></a>

编辑:请注意,它可能不适合引用,因为这不是一种自然的链接方式,机器人不会抓取它。