簡體   English   中英

jQuery 如何從 url 中刪除#

[英]jQuery how to remove # from url

我的 url 生成如下: 僅在 ie9 中顯示

http://myurl.com/#/categories/posts

我如何從 url 中刪除 # 並使其像http://myurl.com/categories/posts在我的頁面 rest 上一樣? 謝謝。

我可以這樣使用嗎? 我怎樣才能檢測到# 因為首頁沒有#。

if ($.browser.msie  && parseInt($.browser.version, 10) === 9 && window.location.href.indexOf("#")) 
    {
        document.location.href = String( document.location.href ).replace( /#/, "" );
    }

刪除 #/ 使用.replace( /#\//, "" ); 正如提到的凱文B

這不是真正的 JQuery 工作 - 為此使用普通的 Javascript。

document.location.href = String( document.location.href ).replace( /#/, "" );

編輯添加@Kevin B 的完整性答案

document.location.href = String( document.location.href ).replace( "#/", "" );

只需為錨標記的點擊事件添加“return false”。

$("#selectorname").click(function(){
    if ($.browser.msie  && parseInt($.browser.version, 10) === 9 && window.location.href.indexOf("#")) 
    {
        document.location.href = String( document.location.href ).replace( /#/, "" );
    }
    return false; /* This prevents url from # */
});

要不然

<a href="#" onclick='return false'>Hey click me, I'm # free</a>

或者只是讓它簡單

$("#selectorname").click(function(e){
   /* some statements */
   e.preventDefault();
});

這可以防止不觸發默認操作。 詳細信息在這里

$("a").attr("href",$("a").attr("href").replace(/#/, "")); 

<a href="#" onclick="return false">Hey click me, I'm # free</a>完成工作。 我用它在 Bootstrap 動態選項卡切換期間隱藏#。 謝謝

<ul class="nav nav-tabs">
                            <li class="active"><a data-toggle="tab" href="#i-ab" onclick="return false">ab</a></li>
                            <li><a data-toggle="tab" href="#i-cd" onclick="return false">cd</a></li>
                            <li><a data-toggle="tab" href="#i-ef" onclick="return false">ef</a></li>
                        </ul>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM