2017-02-28 43 views
0

從輸入框中獲取同義詞的單詞。該單詞的同義詞應該來自另一個文本,並且如果發現它應該被顯示。使用javascript從給定單詞的段落中查找同義詞

+1

提供一些代碼,請。 – Mistalis

+1

請提供有關您的問題的更多詳細信息。即。什麼是輸入和預期輸出?你已經嘗試過的任何方法? –

+0

假設有一個文本區域中有一個寫了一個段落,另外有一個填充了單詞的輸入字段應該從上面的文本字段中找到所有的同義詞。文本區域中的數據是動態的可以更改 –

回答

0

您需要將所有單詞映射到它的同義詞,然後搜索/替換單詞。

var synonyms = { 
 
    'car': [ 
 
    'vehicle', 
 
    'motorcar', 
 
    'truck' 
 
    ], 
 
    'door': [ 
 
    'entrance', 
 
    'opening', 
 
    ] 
 
}; 
 

 
$(document).ready(function() { 
 
    $(document).on('change', 'input', function() { 
 
    var text = $('p').text(); 
 

 
    if (typeof synonyms[$(this).val()] !== 'undefined') { 
 

 
     $.each(synonyms[$(this).val()], function() { 
 
     text = text.replace(this, '<span>' + this + '</span>'); 
 
     }); 
 
    } 
 

 
    $('p').html(text); 
 
    }); 
 
});
p span { 
 
    background-color: yellow; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" placeholder="Enter word 'car' or 'door'" /> 
 

 
<p> 
 
    opening vehicle cat truck pineapple red entrance 
 
</p>


看看這個synonyms page

相關問題