在Anki,我有一个笔记类型,其中一张卡片实际上是一个完形填空删除,但是我同时使用其他卡片,其中包含完形填空删除字段。我已尝试使用javascript替换两个内容中的所有内容,并且在编辑时它似乎在预览中有效,但在正常使用期间出现该卡时,只显示第一行纯文本。我使用桌面Linux程序进行编辑,但也希望能够在AnkiDroid中使用它。
所以问题是:问题是什么以及如何解决?
前台模板:
<script>
function showDef() {
document.getElementById("def").innerHTML = '{{Bedeutung 1}}'.replace(/^[^\/]+\/\*!?/, '').replace(/\*\/[^\/]+$/, '');
};
var initial = false;
var beispiel = (function () {/*{{Beispiel 1}}*/}).toString().replace(/^[^\/]+\/\*!?/, '').replace(/\*\/[^\/]+$/, '');
var splitBeispiel = beispiel.split('\\');
document.write(splitBeispiel[0] + "<n id='cloze'>[...]</n>" + splitBeispiel[2]);
</script>
<p onclick="showDef()" id="def">Click to show definition</p>
样式:
.card {
font-family: arial;
font-size: 20px;
text-align: center;
color: black;
background-color: white;
}
#cloze {
font-family: arial;
font-size: 25px;
text-align: center;
color: blue;
background-color: white;
}
#def {
font-family: arial;
font-size: 15px;
text-align: center;
color: green;
background-color: white;
}
#beispiel {
font-family: arial;
font-size: 15px;
text-align: center;
color: orange;
background-color: white;
}
返回模板:
<script>
var initial = false;
var beispiel = (function () {/*{{Beispiel 1}}*/}).toString().replace(/^[^\/]+\/\*!?/, '').replace(/\*\/[^\/]+$/, '');
var splitBeispiel = beispiel.split('\\');
document.write(splitBeispiel[0] + "<n id='cloze'>" + splitBeispiel[1] +"</n>" + splitBeispiel[2]);
</script>
<hr id=answer>
{{Singular Nominativ}}
Beispiel 1&#39;以下示例中的字段是&#34; ein kirchlicher,ein \ gesetzlicher \ Feiertag&#34;
编辑器预览的屏幕截图:
测试截图:
答案 0 :(得分:0)
我想,您应该寻找解决方案here。
例如,避免在模板中使用document.write
并使用document.getElementById("HTMLidToReplace").innerHTML = '<b>' + your_var + '</b>';
。希望它有所帮助。