2012-02-07 58 views
0

我想删除面包屑的一些元素。 Essentialy >页面>默认 什么是最好的方式来删除那些与jQuery的网站?jquery删除面包屑中的跨度

首页>>页议程>默认

其结果将是首页>议程

<div class="breadcrumb">  
<span id="ctl00_PlaceHolderTeqBreadcrumb_siteMapPath"> 
    <span><a href="/" class="ms-sitemapdirectional">Home</a></span> 
    <span> &gt; </span> 
    <span><a href="/Agenda" class="ms-sitemapdirectional">Agenda</a></span> 
    <span> &gt; </span> 
    <span><a href="/Agenda/_layouts/listform.aspx?ListId=%7BA82B0240%2D8259%2D4F79%2DA710%2D66E4BA436A53%7D&amp;PageType=0" class="ms-sitemapdirectional">Pages</a></span> 
    <span> &gt; </span> 
    <span><a href="/Agenda/Pages/default.aspx" class="current">default</a></span> 
    </span> 
</div> 

首页>所有会议>页面>默认

结果将是首页>所有会议

<div class="breadcrumb">  
<span id="ctl00_PlaceHolderTeqBreadcrumb_siteMapPath"><span> 
    <a href="/" class="ms-sitemapdirectional">Home</a></span> 
    <span> &gt; </span> 
    <span><a href="/AllMeetings" class="ms-sitemapdirectional">All Meetings</a></span> 
    <span> &gt; </span> 
    <span><a href="/AllMeetings/_layouts/listform.aspx?ListId=%7B9A69EF7E%2D31FF%2D49C7%2DA191%2D5CE2240E7ABC%7D&amp;PageType=0" class="ms-sitemapdirectional">Pages</a></span> 
    <span> &gt; </span> 
    <span><a href="/AllMeetings/Pages/default.aspx" class="current">default</a></span> 
    </span> 
</div> 

,并在某些情况下,我有

首页>所有会议>页>功能会议

在这里我想删除>页面

其结果将是

的Les Embiez 2012 >所有会议>功能会议

<div class="breadcrumb">  
<span id="ctl00_PlaceHolderTeqBreadcrumb_siteMapPath"> 
    <span><a href="/" class="ms-sitemapdirectional">Home</a></span> 
    <span> &gt; </span><span><a href="/AllMeetings" class="ms-sitemapdirectional">All Meetings</a></span> 
    <span> &gt; </span><span><a href="/AllMeetings/_layouts/listform.aspx?ListId=%7B9A69EF7E%2D31FF%2D49C7%2DA191%2D5CE2240E7ABC%7D&amp;PageType=0" class="ms-sitemapdirectional">Pages</a></span> 
    <span> &gt; </span> 
    <span><a href="/AllMeetings/Pages/Functional%20Meetings.aspx" class="current">Functional Meetings</a></span> 
    </span> 
</div> 

编辑

我目前使用下面的jQuery来实现这个

var url = location.pathname; 
     if (url.indexOf('/Pages/default.aspx') >= 0) { 
      $(".breadcrumb span").slice(-4).remove() 
     } 
     else { 
      $(".breadcrumb span a:contains('Pages'),.breadcrumb span a:contains('default')").remove(); 
      $(".breadcrumb span:contains('>')").last().remove(); 
     } 
+0

类似的东西我没有反对票这个问题,这是一种耻辱,谁做的人选择不离开自己的理由。我怀疑这可能是因为你没有证明你已经研究过这个问题或者自己尝试过任何东西。你已经尝试了什么? – 2012-02-07 14:42:24

+0

:)是的,我有。我只是看最好的选择。向社区征求意见:) – user472285 2012-02-07 14:43:32

+0

好吧,最好的做法是展示您已有的代码,然后人们可以就如何改进提供建议。要求“最好的办法”最糟糕的事情往往是意见。所以最好问问,我怎么能改善这个... – 2012-02-07 14:44:44

回答

0
var url = location.pathname; 
     if (url.indexOf('/Pages/default.aspx') >= 0) { 
      $(".breadcrumb span").slice(-4).remove() 
     } 
     else { 
      $(".breadcrumb span a:contains('Pages'),.breadcrumb span a:contains('default')").remove(); 
      $(".breadcrumb span:contains('>')").last().remove(); 
     } 
0

你可以添加一个id或class来标识它的跨度标签? 然后你可以使用

$('.spanBCPages').remove(); 
$('.spanBCDefault').remove(); 

或类似

0

试试这个:

$("span a").filter(function(index) { 
    return $(this).text() == "Pages"; 
}).parent().prev().nextAll("span").remove();