本文介绍了如何使用JavaScript / jQuery从HTML中获得符号的unicode / hex表示形式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
< math xmlns =http://www.w3 .ORG / 1998 /数学/ MATHML>
< / math>
有没有办法获得alpha α的unicode / / code>,
&#x03B1
,使用JavaScript / jQuery?类似... $ / $>
$('。symbol')。text()。unicode(); //我知道unicode()不存在
$('。symbol')。text()。hex(); //我知道hex()不存在
我需要& #x03B1
而不是α
,并且好像随时将&#x03B1
插入并尝试立即检索它,它得到渲染,我不能得到&#x03B1
back;我只是得到了α。
解决方案
使用大多数普通的JavaScript,您应该可以做到:
函数entityForSymbolInContainer(selector){
var code = $(selector).text()。charCodeAt(0);
var codeHex = code.toString(16).toUpperCase();
while(codeHex.length< 4){
codeHex =0+ codeHex;
}
return& #x+ codeHex +;;
}
下面是一个例子:
Say I have an element like this...
<math xmlns="http://www.w3.org/1998/Math/MathML">
<mo class="symbol">α</mo>
</math>
Is there a way to get the unicode/hex value of alpha α
, α
, using JavaScript/jQuery? Something like...
$('.symbol').text().unicode(); // I know unicode() doesn't exist
$('.symbol').text().hex(); // I know hex() doesn't exist
I need α
instead of α
and it seems like anytime I insert α
into the DOM and try to retrieve it right away, it gets rendered and I can't get α
back; I just get α.
解决方案
Using mostly plain JavaScript, you should be able to do:
function entityForSymbolInContainer(selector) {
var code = $(selector).text().charCodeAt(0);
var codeHex = code.toString(16).toUpperCase();
while (codeHex.length < 4) {
codeHex = "0" + codeHex;
}
return "&#x" + codeHex + ";";
}
Here's an example: http://jsfiddle.net/btWur/
这篇关于如何使用JavaScript / jQuery从HTML中获得符号的unicode / hex表示形式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!