我正在尝试制作一个 Chrome 扩展程序,允许用户输入一个核苷酸序列并将该序列转换为相应的氨基酸序列。理想情况下,我可以单击浏览器中的扩展图标,然后会弹出一个文本框,我可以将序列粘贴到其中。点击“翻译”后,氨基酸序列将出现在输入文本框下方。我希望稍后为此添加更多功能,但这是扩展的基础。
我对 HTML 还是个新手,对 CSS 和 JavaScript 也很陌生,而且我之前也从未创建过 Chrome 扩展程序,所以我在将我的想法转化为工作代码时遇到了一些麻烦。
这是我目前的 HTML:
<!doctype html>
<html>
<form action="/popup.js">
<p>
<label for="input"><b>Nucleotide Sequence:</b><br></label>
<textarea id="nucleotide_seq" name="nucleotide_seq" rows="6" cols="35"></textarea>
</p>
<input type="submit" value="Translate">
</form>
</html>
我现在最大的问题是如何实现,当您点击“翻译”时,用户输入被发送到 JavaScript 文件并保存为一个变量,然后代码将迭代该变量,并将其转换为氨基酸字符串,它将在原始输入文本框下方作为字符串打印出来。
感谢任何帮助!
最佳答案
请检查这个 https://jsfiddle.net/fNPvf/39583/
function translateInput(){
var nucle=document.getElementById("nucleotide_seq").value;
//translate nucle
document.getElementById("nucleotide_seq").value = "amino acid";
}
如果需要,您也可以使用本地存储。请检查以下链接
https://jsfiddle.net/fNPvf/39584/
function translateInput(){
localStorage.nucle = document.getElementById("nucleotide_seq").value;
//translate nucle
document.getElementById("nucleotide_seq").value ="converted "+localStorage.nucle;
}
更新 fiddle 。请检查这个 https://jsfiddle.net/fNPvf/39630/
function translateInput(){
localStorage.nucle = document.getElementById("nucleotide_seq").value;
//translate nucle
document.getElementById("nucleotide_seq").value =localStorage.nucle;
document.getElementById("amino_acid_seq").value ="converted "+localStorage.nucle;
}
关于javascript - Chrome 扩展 - 记住用户输入的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43646772/