如何测试标签的值



我有新闻列表,我可以修改新闻。当我修改一个人时,她呆在自己的位置(如果她在第5位,她会留在这里)。但是,当我单击"修改此新"表单时,将一个弹出到页面的底部,然后当我提交修改时,我想滚动到此修改后的新版本。为此,我会使用

之类的东西
find position where label.text() == titleModified

然后我可以做

window.scrollTo(0,result of the line above);

目前我尝试进行document.getElementById,但它总是将我带到页面顶部...

谢谢您的帮助
PS:Plunker上有一个链接,可以查看新闻结构:https://plnkr.co/edit/mlcxpyabr56kkeolnf8f?p=preview

这是我修改的JS:

 'submit .modifyArticle'(event) {
  event.preventDefault();
  const target = event.target;
  const textModif = target.textModif.value;
  const titreModif = target.titreModif.value;
  const photoModif = target.photoModif.value;
  const idModif = Session.get('idTemp');
  //test if values from the from are not empty or whitespaced
  if ((/S/.test(textModif))||(/S/.test(titreModif))) {
  console.log("2ème étape: dans body.js -> submit .modifyArticle");
  Meteor.call('articles.modify',idModif,textModif,titreModif,photoModif);
  Session.set('wantModif',false);

//here my new is modified so I want to scroll to her


//var titreModified actually contains the title after the modification but only for the first new...
  setTimeout(function(){
  var titreModified = document.getElementById("titreArticle");
  var position = titreModified.offsetTop;
  console.log("Y: " + position);
  console.log("var titreArticleModif: "+ titreModified.textContent);
}, 50)
[...]

编辑(我将解决方案放在这里,但真正的英雄是 @alexr101):首先,我必须在标签<label class="titreArticle">{{titre}}</label>
中添加一类 那是JS:

`setTimeout(function(){
  $('.titreArticle').each(function(i, obj) {
      if(obj.textContent.includes(titreModif)){
          alert("le titre devrait être: " + obj.textContent);
          var position = obj.offsetTop;
          window.scrollTo(0,position);
          return false;
      }
  });
}, 20)`

超时在这里,因为它不是100%实时的,我必须等到将新标题放在DOM中。

尝试将元素的y位置如下:

//get modified element
var titleModified = document.getElementById("modifiedElement");
//get y position of element through offsetTop function
var yPosition = titleModified.offsetTop;
//Set scroll amount
window.scrollTo(0, yPosition );

那会起作用吗?

最新更新