Javascript记得变量,剥离div

时间:2016-11-12 14:04:06

标签: javascript jquery html css

我有一个脚本在鼠标悬停时向div添加一个单词现在我希望在单击单词时记住该单词并在控制台中打印。
但这些词是如下链接:
<a href"">So,</a>
当我点击这个单词时,脚本现在会记住整个链接。所以我需要找到一种方法如何将其“剥离”到“So”这个词的任何想法?
这里的代码:

<script src="https://code.jquery.com/jquery-2.2.4.js"></script>

<script>
var $allescheissehierrein = $('.allescheissehierrein'),
    datenbank = {
    1: '<a href="file:///Users/shirin/Desktop/A/Media%20Design/TCB/one.html">So,</a>', 
    2: '<a href="file:///Users/shirin/Desktop/A/Media%20Design/TCB/one.html">HERE,</a>'},
    simbol = '',
    platzierRandom = function () {
      var w = document.body.offsetWidth,
          h = document.body.offsetHeight,
          rd = document.getElementsByTagName('div');

      for (var c = 0, l = rd.length; c < l; c++) {
        if (rd[c].className !== 'random') {
          continue;
        }

        var xCoord = Math.floor(Math.random() * w),
            yCoord = Math.floor(Math.random() * h);

        switch (true) {
          case (xCoord >= w - rd[c].offsetWidth - 10):
            xCoord = w - rd[c].offsetWidth - 10;
            break;
          case (xCoord <= 10):
            xCoord = 10;
            break;
          case (yCoord >= h - rd[c].offsetHeight - 10):
            yCoord = h - rd[c].offsetHeight - 10;
            break;
          case (yCoord <= 10):
            yCoord = 10;
            break;
        }

        rd[c].style.left = xCoord + 'px';
        rd[c].style.top = yCoord + 'px';
      }
    };

//einfach loop mit bis 100 oder was auch immer
for (var i = 1; i <= 2; i++) {

  //einen div in eine variable speichern
  //es wird für die datenbank "data-hover" auf den i wert gesetzt welcher ja stetig hochzählt darum alle verschieden
  switch (true) {
    case (i < 24):
      simbol = '#';
      break;
    case ((i > 23) && (i < 47)):
      simbol = '**';
      break;
    case ((i > 46) && (i < 97)):
      simbol = '-';
      break;
    case ((i > 96) && (i < 114)):
      simbol = '1.';
      break;
    case (i > 113):
      simbol = '~~';
      break;
  }

  //diesen die dem allescheissehierrein-div appendieren (100 mal)
  $allescheissehierrein.append('<div data-hover="' + i + '" class="random"><p>' + simbol + '</p></div>');
}

//diese platzier dings funktionion erst nach der platzierung aller divs (diese 100) machen weil sie ja vorher gar nicht existieren
platzierRandom();

//richtig mit jquery UND datenbank
$('.random')
  .hover(function () {
    var hoverdata = $(this).data('hover'),
        satzvondatenbank = datenbank[hoverdata];
    $(this).append($('<span>' + satzvondatenbank + '</span>').show('slow'));


      $( 'a' ).mousedown( function( event )
  {
       var poemArray;
  if ( localStorage.getItem( "poem" ) )
  {
      poemArray = localStorage.getItem( "poem" );

      console.log( poemArray );
  }
  else
  {
      poemArray = "";
      localStorage.setItem( "poem", poemArray );
  }

  poemArray += " " + satzvondatenbank;

  console.log( poemArray );


  localStorage.setItem( "poem", poemArray );

  }
  )



  }, function () {
    $(this).find('span:last').remove();
  });











  </script>

</html>

1 个答案:

答案 0 :(得分:0)

您可以使用jquery导航到锚标记,然后使用像这样的jquery获取文本,

var anchorText=$("a").text();

这将获取锚标记内存在的innerText。 或者您也可以使用此方法,

var anchor=<a href="file:///Users/shirin/Desktop/A/Media%20Design/TCB/one.html">So,</a>

anchor.substring(indexOf(">")[0],indexOf("<")[1]);