确定用javascript / jQuery点击的文本

时间:2014-01-30 18:03:22

标签: javascript jquery

假设我有一个html元素,我想知道元素中哪个单独的字符被点击,是否有任何方法可以使用javascript / jQuery将每个字符分隔成自己的元素。

2 个答案:

答案 0 :(得分:0)

嗯......这里有一些想法

  1. 愚蠢而快速

    <p onclick="clicked('a')";>a</p>
    <p onclick="clicked('b')";>b</p>
    <p onclick="clicked('c')";>c</p>
    
  2. 适合的风格。

    1. 乏味,不知道是否可以调整
    2. ... HTML

      <p id="text" onclick="which(event)">abcde</p>
      

      ... JS

      function which(event) {
          var offsetX = $("#text").offset().left;
          var mX = event.x-offsetX;
          // use event.clientX for firefox and so on
          if (mX < 5) {
              alert("a");
          }   else if (mX < 20) {
              alert("b");
          }   else if (mX < 32) {
              alert("c");
          }   else if (mX < 43) {
              alert("d");
          }   else if (mX < 56) {
              alert("e");
          }
      }
      

      虽然我不知道如何将p元素的字母宽度保持为常数......

答案 1 :(得分:0)

这是一个很慢的代码,但无法找到更好的方法:

$('yourTarget').html(function(_,t){
    return t.replace(/(.)/g, '<span>$1</span>');
}).on('click', 'span', function(){
    alert($(this).text());
});

小提琴:http://jsfiddle.net/bT4XX/