javascript - JQuery .text() 函数在使用面包屑代码时返回上一页元素的文本值

标签 javascript jquery text

我正在使用 javascript 代码进行面包屑导航

我想在我的示例中提取标题 (h2) 的文本值。

我使用了 .text() 函数来这样做,但问题是:

当导航到下一页时,脚本会返回上一页标题的文本值,每次导航时我都需要刷新页面才能正常工作。

我的代码。在 page.php 上

 <script language="JavaScript">


$(document).ready(function() {

name=$("h2").text();      

});


breadcrumbs('index.php',name);// call the function

</script>


   <h2>Title</h2>

javascript.js:

// JavaScript Document

function breadcrumbs(home,name){


  sURL = new String;
  bits = new Object;
  var x = 0;
  var stop = 0;
  var output = "<a href=\"http\:\/\/"+home+"\">الرئيسية</a> \<b\>&raquo;\<\/b\>  ";
  sURL = location.href;
  sURL = sURL.slice(8,sURL.length);
  chunkStart = sURL.indexOf("/");
  sURL = sURL.slice(chunkStart+1,sURL.length)
  while(!stop){
    chunkStart = sURL.indexOf("/");
    if (chunkStart != -1){
      bits[x] = sURL.slice(0,chunkStart)
      sURL = sURL.slice(chunkStart+1,sURL.length);
    }else{
      stop = 1;
    }
    x++;
  }
  for(var i in bits){
    output += "<a href=\"";
    for(y=1;y<x-i;y++){
      output += "../";
    }
    output += bits[i] + "/\">" + bits[i] + "</a>  \<b\> &raquo; \<\/b\>  ";
  }



  document.write(output + name);

}

最佳答案

您的 jQuery 选择器 $('h2') 将检查浏览器中存在的整个 dom(文档对象模型)。您的面包屑很可能会将您的 View 内容保留在页面上,并且只是切换可见性。通过浏览器的检查元素选项查看您的页面,您会发现所有第一页内容仍然存在,尽管进行了切换。

为每个面包屑内容和各自的标题类名称或 ID 提供 html,然后您可以将选择器限制为所需的标题。

关于javascript - JQuery .text() 函数在使用面包屑代码时返回上一页元素的文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20873858/

相关文章:

javascript - 深度等于错误?

javascript - asp.net ajax 4.0客户端模板,如何绑定(bind)一个select?

javascript - jquery:多个 ajax 调用以不同的顺序响应,并且 document.body 导致对象丢失与 DOM 元素的链接

javascript - 使用 jQuery 将 2 个 HTML 类相乘并输出总计

php - jQuery 自动完成结果应显示为组合框

python - 从文本文件打印链接会在中间产生 "line gap"

javascript - 在 Rickshaw.js 中设置 Y 轴网格密度

jquery - 有什么方法可以根据用户的浏览器窗口自动缩放浏览器?

java - JTextPane 拒绝对长字符串进行自动换行

mysql - 将消息存储为 BLOB(二进制大对象)还是普通文本?