javascript - 查找上一个 <a> 元素?

标签 javascript jquery

<a href="/user/SOMEUSERNAME">SOMEUSERNAME</a>
<div class="col s9">
  <p id="p_50">Some message</p>
  <br>
  <br>
  <span class="forumtools">
    <strong>
      <a onclick="quote(\'p#p_50\')">Quote</a>
    </strong>
  <span class="right">Written SOMEDATE</span>
  </span>
</div>

JQuery/JS:

function quote(post) { $(post).text(); }

这可以获取帖子消息,但我该如何找到用户名?

我尝试过使用 $(post).prev('a').text();$(post).parent().prev('a') .text();,但似乎没有任何效果。

最佳答案

不用 jQuery 也能做到。如果可能,请更改 html 并将当前链接传递给函数,如下所示:

<a onclick="quote(\'p#p_50\', this)">Quote</a>

然后您可以搜索所有链接:

function quote(str, currentLink) {
  var allLinks = document.getElementsByTagName("a"); // get all links in document
  var index = allLinks.indexOf(currentLink);
  if (index > 0) {
    var prevLink = allLinks[index-1];
    console.log(prevLink); // log it to browser console
  } else { 
    console.log("there is no previous link"); 
  }
}

关于javascript - 查找上一个 <a> 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42558504/

相关文章:

javascript - 简单的 JQuery 插件创建

javascript - 如何在 Keystone.js 项目中使用 Express.js 中间件?

javascript - 如何在不每次都搜索单选组的情况下使用 jQuery 找出选择了哪个单选按钮?

更改属性的 jquery css 接收滚动条

javascript - Jquery .on ("change",生成内容后不会触发 function()

javascript - Here Map - Javascript - 切换到夜间模式

javascript - 如何从 Clojurescript 调用 Javascript?

javascript - 如何在两个 y 坐标之间缓和?

javascript - 获取 hashchange 之前的哈希值

jquery - 为两个相似的元素独立地使用 jQuery 更改 CSS 类