2012-12-30 75 views
0

我已經嘗試了幾個小時來完成這項工作。擊中一個單詞然後突出顯示

我需要一個函數,如果它是正確的,它會突出顯示char。

例如,單詞是「halluluja」,我有一個輸入字段。

當用戶點擊「h」時,必須在「halleluja」中使「h」變爲紅色,如果用戶之後點擊「ha」,則必須突出顯示a。等等。

我試過用substr,沒有任何運氣。

'typing':function(e){ 
     var c = w.length; //The word length, ex. halleluja 
     for (i=0;i<e.length;i++){ //foreach each 
      var o = e.substr(0, e.length); var l = w.substr(i,i+1); //my typing substr, and the char substr 
      if (o.toLowerCase() == l.toLowerCase()){ //correct 
       //highlight the letter. 
      } 
     } 
     }, 

詞容器在這裏輸出該容器中的單詞。

document.getElementById('wordContainer').innerHTML = w; 
+1

做一個小提琴在http://jsfiddle.net – Enve

+0

當用戶點擊一個' '你想只突出顯示一個或者h和a都是紅色的? – nikhil

回答

3

試試這個:http://jsfiddle.net/tqHRA/

HTML:

<div id="preview">hello world</div> 

<input type='text' id='txt' />​ 

的JavaScript:

var source = 'hello world'; 

$(document).ready(function(){ 
    $('#txt').keyup(function(){ 
     var text = $(this).val(); 
     var replaced = source.replace(text, '<span class="highlight">' + text + '</span>'); 
     $('#preview').html(replaced); 
    }); 
});​ 
+0

這裏是不區分大小寫的叉子http://jsfiddle.net/tqHRA/1/,並且僅突出顯示開始。 – meze