charmap.js
上传用户:dlqqsh
上传日期:2021-11-13
资源大小:7840k
文件大小:15k
源码类别:

OA系统

开发平台:

Java

  1. function init() {
  2. tinyMCEPopup.resizeToInnerSize();
  3. }
  4. var charmap = new Array();
  5. // for mor details please see w3c.org
  6. // now here is the complete list ;)
  7. charmap = [
  8. [' ',    ' ',  true, 'no-break space'],
  9. ['&',     '&',   true, 'ampersand'],
  10. ['"',    '"',   true, 'quotation mark'],
  11. // finance
  12. ['¢',    '¢',  true, 'cent sign'],
  13. ['€',    '€', true, 'euro sign'],
  14. ['£',   '£',  true, 'pound sign'],
  15. ['¥',     '¥',  true, 'yen sign'],
  16. // signs
  17. ['©',    '©',  true, 'copyright sign'],
  18. ['®',     '®',  true, 'registered sign'],
  19. ['™',   '™', true, 'trade mark sign'],
  20. ['‰',  '‰', true, 'per mille sign'],
  21. ['µ',   'µ',  true, 'micro sign'],
  22. ['·',  '·',  true, 'middle dot'],
  23. ['•',    '•', true, 'bullet'],
  24. ['…',  '…', true, 'three dot leader'],
  25. ['′',   '′', true, 'minutes / feet'],
  26. ['″',   '″', true, 'seconds / inches'],
  27. ['§',    '§',  true, 'section sign'],
  28. ['¶',    '¶',  true, 'paragraph sign'],
  29. ['ß',   'ß',  true, 'sharp s / ess-zed'],
  30. // quotations
  31. ['‹',  '‹', true, 'single left-pointing angle quotation mark'],
  32. ['›',  '›', true, 'single right-pointing angle quotation mark'],
  33. ['«',   '«',  true, 'left pointing guillemet'],
  34. ['»',   '»',  true, 'right pointing guillemet'],
  35. ['‘',   '‘', true, 'left single quotation mark'],
  36. ['’',   '’', true, 'right single quotation mark'],
  37. ['“',   '“', true, 'left double quotation mark'],
  38. ['”',   '”', true, 'right double quotation mark'],
  39. ['‚',   '‚', true, 'single low-9 quotation mark'],
  40. ['„',   '„', true, 'double low-9 quotation mark'],
  41. ['<',      '<',   true, 'less-than sign'],
  42. ['>',      '>',   true, 'greater-than sign'],
  43. ['≤',      '≤', true, 'less-than or equal to'],
  44. ['≥',      '≥', true, 'greater-than or equal to'],
  45. ['–',   '–', true, 'en dash'],
  46. ['—',   '—', true, 'em dash'],
  47. ['¯',    '¯',  true, 'macron'],
  48. ['‾',   '‾', true, 'overline'],
  49. ['¤',  '¤',  true, 'currency sign'],
  50. ['¦',  '¦',  true, 'broken bar'],
  51. ['¨',     '¨',  true, 'diaeresis'],
  52. ['¡',   '¡',  true, 'inverted exclamation mark'],
  53. ['¿',  '¿',  true, 'turned question mark'],
  54. ['ˆ',    'ˆ',  true, 'circumflex accent'],
  55. ['˜',   '˜',  true, 'small tilde'],
  56. ['°',     '°',  true, 'degree sign'],
  57. ['−',   '−', true, 'minus sign'],
  58. ['±',  '±',  true, 'plus-minus sign'],
  59. ['÷',  '÷',  true, 'division sign'],
  60. ['⁄',   '⁄', true, 'fraction slash'],
  61. ['×',   '×',  true, 'multiplication sign'],
  62. ['¹',    '¹',  true, 'superscript one'],
  63. ['²',    '²',  true, 'superscript two'],
  64. ['³',    '³',  true, 'superscript three'],
  65. ['¼',  '¼',  true, 'fraction one quarter'],
  66. ['½',  '½',  true, 'fraction one half'],
  67. ['¾',  '¾',  true, 'fraction three quarters'],
  68. // math / logical
  69. ['ƒ',    'ƒ',  true, 'function / florin'],
  70. ['∫',     '∫', true, 'integral'],
  71. ['∑',     '∑', true, 'n-ary sumation'],
  72. ['∞',   '∞', true, 'infinity'],
  73. ['√',   '√', true, 'square root'],
  74. ['∼',     '∼', false,'similar to'],
  75. ['≅',    '≅', false,'approximately equal to'],
  76. ['≈',   '≈', true, 'almost equal to'],
  77. ['≠',      '≠', true, 'not equal to'],
  78. ['≡',   '≡', true, 'identical to'],
  79. ['∈',    '∈', false,'element of'],
  80. ['∉',   '∉', false,'not an element of'],
  81. ['∋',      '∋', false,'contains as member'],
  82. ['∏',    '∏', true, 'n-ary product'],
  83. ['∧',     '∧', false,'logical and'],
  84. ['∨',      '∨', false,'logical or'],
  85. ['¬',     '¬',  true, 'not sign'],
  86. ['∩',     '∩', true, 'intersection'],
  87. ['∪',     '∪', false,'union'],
  88. ['∂',    '∂', true, 'partial differential'],
  89. ['∀',  '∀', false,'for all'],
  90. ['∃',   '∃', false,'there exists'],
  91. ['∅',   '∅', false,'diameter'],
  92. ['∇',   '∇', false,'backward difference'],
  93. ['∗',  '∗', false,'asterisk operator'],
  94. ['∝',    '∝', false,'proportional to'],
  95. ['∠',     '∠', false,'angle'],
  96. // undefined
  97. ['´',   '´',  true, 'acute accent'],
  98. ['¸',   '¸',  true, 'cedilla'],
  99. ['ª',    'ª',  true, 'feminine ordinal indicator'],
  100. ['º',    'º',  true, 'masculine ordinal indicator'],
  101. ['†',  '†', true, 'dagger'],
  102. ['‡',  '‡', true, 'double dagger'],
  103. // alphabetical special chars
  104. ['À',  'À',  true, 'A - grave'],
  105. ['Á',  'Á',  true, 'A - acute'],
  106. ['Â',   'Â',  true, 'A - circumflex'],
  107. ['Ã',  'Ã',  true, 'A - tilde'],
  108. ['Ä',    'Ä',  true, 'A - diaeresis'],
  109. ['Å',   'Å',  true, 'A - ring above'],
  110. ['Æ',   'Æ',  true, 'ligature AE'],
  111. ['Ç',  'Ç',  true, 'C - cedilla'],
  112. ['È',  'È',  true, 'E - grave'],
  113. ['É',  'É',  true, 'E - acute'],
  114. ['Ê',   'Ê',  true, 'E - circumflex'],
  115. ['Ë',    'Ë',  true, 'E - diaeresis'],
  116. ['Ì',  'Ì',  true, 'I - grave'],
  117. ['Í',  'Í',  true, 'I - acute'],
  118. ['Î',   'Î',  true, 'I - circumflex'],
  119. ['Ï',    'Ï',  true, 'I - diaeresis'],
  120. ['Ð',     'Ð',  true, 'ETH'],
  121. ['Ñ',  'Ñ',  true, 'N - tilde'],
  122. ['Ò',  'Ò',  true, 'O - grave'],
  123. ['Ó',  'Ó',  true, 'O - acute'],
  124. ['Ô',   'Ô',  true, 'O - circumflex'],
  125. ['Õ',  'Õ',  true, 'O - tilde'],
  126. ['Ö',    'Ö',  true, 'O - diaeresis'],
  127. ['Ø',  'Ø',  true, 'O - slash'],
  128. ['Œ',   'Œ',  true, 'ligature OE'],
  129. ['Š',  'Š',  true, 'S - caron'],
  130. ['Ù',  'Ù',  true, 'U - grave'],
  131. ['Ú',  'Ú',  true, 'U - acute'],
  132. ['Û',   'Û',  true, 'U - circumflex'],
  133. ['Ü',    'Ü',  true, 'U - diaeresis'],
  134. ['Ý',  'Ý',  true, 'Y - acute'],
  135. ['Ÿ',    'Ÿ',  true, 'Y - diaeresis'],
  136. ['Þ',   'Þ',  true, 'THORN'],
  137. ['à',  'à',  true, 'a - grave'],
  138. ['á',  'á',  true, 'a - acute'],
  139. ['â',   'â',  true, 'a - circumflex'],
  140. ['ã',  'ã',  true, 'a - tilde'],
  141. ['ä',    'ä',  true, 'a - diaeresis'],
  142. ['å',   'å',  true, 'a - ring above'],
  143. ['æ',   'æ',  true, 'ligature ae'],
  144. ['ç',  'ç',  true, 'c - cedilla'],
  145. ['è',  'è',  true, 'e - grave'],
  146. ['é',  'é',  true, 'e - acute'],
  147. ['ê',   'ê',  true, 'e - circumflex'],
  148. ['ë',    'ë',  true, 'e - diaeresis'],
  149. ['ì',  'ì',  true, 'i - grave'],
  150. ['í',  'í',  true, 'i - acute'],
  151. ['î',   'î',  true, 'i - circumflex'],
  152. ['ï',    'ï',  true, 'i - diaeresis'],
  153. ['ð',     'ð',  true, 'eth'],
  154. ['ñ',  'ñ',  true, 'n - tilde'],
  155. ['ò',  'ò',  true, 'o - grave'],
  156. ['ó',  'ó',  true, 'o - acute'],
  157. ['ô',   'ô',  true, 'o - circumflex'],
  158. ['õ',  'õ',  true, 'o - tilde'],
  159. ['ö',    'ö',  true, 'o - diaeresis'],
  160. ['ø',  'ø',  true, 'o slash'],
  161. ['œ',   'œ',  true, 'ligature oe'],
  162. ['š',  'š',  true, 's - caron'],
  163. ['ù',  'ù',  true, 'u - grave'],
  164. ['ú',  'ú',  true, 'u - acute'],
  165. ['û',   'û',  true, 'u - circumflex'],
  166. ['ü',    'ü',  true, 'u - diaeresis'],
  167. ['ý',  'ý',  true, 'y - acute'],
  168. ['þ',   'þ',  true, 'thorn'],
  169. ['ÿ',    'ÿ',  true, 'y - diaeresis'],
  170.     ['Α',   'Α',  true, 'Alpha'],
  171. ['Β',    'Β',  true, 'Beta'],
  172. ['Γ',   'Γ',  true, 'Gamma'],
  173. ['Δ',   'Δ',  true, 'Delta'],
  174. ['Ε', 'Ε',  true, 'Epsilon'],
  175. ['Ζ',    'Ζ',  true, 'Zeta'],
  176. ['Η',     'Η',  true, 'Eta'],
  177. ['Θ',   'Θ',  true, 'Theta'],
  178. ['Ι',    'Ι',  true, 'Iota'],
  179. ['Κ',   'Κ',  true, 'Kappa'],
  180. ['Λ',  'Λ',  true, 'Lambda'],
  181. ['Μ',      'Μ',  true, 'Mu'],
  182. ['Ν',      'Ν',  true, 'Nu'],
  183. ['Ξ',      'Ξ',  true, 'Xi'],
  184. ['Ο', 'Ο',  true, 'Omicron'],
  185. ['Π',      'Π',  true, 'Pi'],
  186. ['Ρ',     'Ρ',  true, 'Rho'],
  187. ['Σ',   'Σ',  true, 'Sigma'],
  188. ['Τ',     'Τ',  true, 'Tau'],
  189. ['Υ', 'Υ',  true, 'Upsilon'],
  190. ['Φ',     'Φ',  true, 'Phi'],
  191. ['Χ',     'Χ',  true, 'Chi'],
  192. ['Ψ',     'Ψ',  true, 'Psi'],
  193. ['Ω',   'Ω',  true, 'Omega'],
  194. ['α',   'α',  true, 'alpha'],
  195. ['β',    'β',  true, 'beta'],
  196. ['γ',   'γ',  true, 'gamma'],
  197. ['δ',   'δ',  true, 'delta'],
  198. ['ε', 'ε',  true, 'epsilon'],
  199. ['ζ',    'ζ',  true, 'zeta'],
  200. ['η',     'η',  true, 'eta'],
  201. ['θ',   'θ',  true, 'theta'],
  202. ['ι',    'ι',  true, 'iota'],
  203. ['κ',   'κ',  true, 'kappa'],
  204. ['λ',  'λ',  true, 'lambda'],
  205. ['μ',      'μ',  true, 'mu'],
  206. ['ν',      'ν',  true, 'nu'],
  207. ['ξ',      'ξ',  true, 'xi'],
  208. ['ο', 'ο',  true, 'omicron'],
  209. ['π',      'π',  true, 'pi'],
  210. ['ρ',     'ρ',  true, 'rho'],
  211. ['ς',  'ς',  true, 'final sigma'],
  212. ['σ',   'σ',  true, 'sigma'],
  213. ['τ',     'τ',  true, 'tau'],
  214. ['υ', 'υ',  true, 'upsilon'],
  215. ['φ',     'φ',  true, 'phi'],
  216. ['χ',     'χ',  true, 'chi'],
  217. ['ψ',     'ψ',  true, 'psi'],
  218. ['ω',   'ω',  true, 'omega'],
  219. // symbols
  220. ['ℵ', 'ℵ', false,'alef symbol'],
  221. ['ϖ',     'ϖ',  false,'pi symbol'],
  222. ['ℜ',    'ℜ', false,'real part symbol'],
  223. ['ϑ','ϑ',  false,'theta symbol'],
  224. ['ϒ',   'ϒ',  false,'upsilon - hook symbol'],
  225. ['℘',  '℘', false,'Weierstrass p'],
  226. ['ℑ',   'ℑ', false,'imaginary part'],
  227. // arrows
  228. ['←',    '←', true, 'leftwards arrow'],
  229. ['↑',    '↑', true, 'upwards arrow'],
  230. ['→',    '→', true, 'rightwards arrow'],
  231. ['↓',    '↓', true, 'downwards arrow'],
  232. ['↔',    '↔', true, 'left right arrow'],
  233. ['↵',   '↵', false,'carriage return'],
  234. ['⇐',    '⇐', false,'leftwards double arrow'],
  235. ['⇑',    '⇑', false,'upwards double arrow'],
  236. ['⇒',    '⇒', false,'rightwards double arrow'],
  237. ['⇓',    '⇓', false,'downwards double arrow'],
  238. ['⇔',    '⇔', false,'left right double arrow'],
  239. ['∴',  '∴', false,'therefore'],
  240. ['⊂',     '⊂', false,'subset of'],
  241. ['⊃',     '⊃', false,'superset of'],
  242. ['⊄',    '⊄', false,'not a subset of'],
  243. ['⊆',    '⊆', false,'subset of or equal to'],
  244. ['⊇',    '⊇', false,'superset of or equal to'],
  245. ['⊕',   '⊕', false,'circled plus'],
  246. ['⊗',  '⊗', false,'circled times'],
  247. ['⊥',    '⊥', false,'perpendicular'],
  248. ['⋅',    '⋅', false,'dot operator'],
  249. ['⌈',   '⌈', false,'left ceiling'],
  250. ['⌉',   '⌉', false,'right ceiling'],
  251. ['⌊',  '⌊', false,'left floor'],
  252. ['⌋',  '⌋', false,'right floor'],
  253. ['⟨',    '〈', false,'left-pointing angle bracket'],
  254. ['⟩',    '〉', false,'right-pointing angle bracket'],
  255. ['◊',     '◊', true,'lozenge'],
  256. ['♠',  '♠', false,'black spade suit'],
  257. ['♣',   '♣', true, 'black club suit'],
  258. ['♥',  '♥', true, 'black heart suit'],
  259. ['♦',   '♦', true, 'black diamond suit'],
  260. [' ',    ' ', false,'en space'],
  261. [' ',    ' ', false,'em space'],
  262. [' ',  ' ', false,'thin space'],
  263. ['‌',    '‌', false,'zero width non-joiner'],
  264. ['‍',     '‍', false,'zero width joiner'],
  265. ['‎',     '‎', false,'left-to-right mark'],
  266. ['‏',     '‏', false,'right-to-left mark'],
  267. ['­',     '­',  false,'soft hyphen']
  268. ];
  269. function renderCharMapHTML() {
  270. var charsPerRow = 20, tdWidth=20, tdHeight=20;
  271. var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';
  272. var cols=-1;
  273. for (var i=0; i<charmap.length; i++) {
  274. if (charmap[i][2]==true) {
  275. cols++;
  276. html += ''
  277. + '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap"'
  278. + ' onmouseover="this.className='charmapOver';'
  279. + 'previewChar('' + charmap[i][1].substring(1,charmap[i][1].length) + '','' + charmap[i][0].substring(1,charmap[i][0].length) + '','' + charmap[i][3] + '');"'
  280. + ' onmouseout="this.className='charmap';"'
  281. + ' nowrap="nowrap" onclick="insertChar('' + charmap[i][1].substring(2,charmap[i][1].length-1) + '');"><a style="text-decoration: none;" onfocus="previewChar('' + charmap[i][1].substring(1,charmap[i][1].length) + '','' + charmap[i][0].substring(1,charmap[i][0].length) + '','' + charmap[i][3] + '');" href="javascript:insertChar('' + charmap[i][1].substring(2,charmap[i][1].length-1) + '');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'
  282. + charmap[i][1]
  283. + '</a></td>';
  284. if ((cols+1) % charsPerRow == 0)
  285. html += '</tr><tr height="' + tdHeight + '">';
  286. }
  287.  }
  288. if (cols % charsPerRow > 0) {
  289. var padd = charsPerRow - (cols % charsPerRow);
  290. for (var i=0; i<padd-1; i++)
  291. html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';
  292. }
  293. html += '</tr></table>';
  294. document.write(html);
  295. }
  296. function insertChar(chr) {
  297. tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');
  298. // Refocus in window
  299. if (tinyMCEPopup.isWindow)
  300. window.focus();
  301. tinyMCEPopup.close();
  302. }
  303. function previewChar(codeA, codeB, codeN) {
  304. var elmA = document.getElementById('codeA');
  305. var elmB = document.getElementById('codeB');
  306. var elmV = document.getElementById('codeV');
  307. var elmN = document.getElementById('codeN');
  308. if (codeA=='#160;') {
  309. elmV.innerHTML = '__';
  310. } else {
  311. elmV.innerHTML = '&' + codeA;
  312. }
  313. elmB.innerHTML = '&amp;' + codeA;
  314. elmA.innerHTML = '&amp;' + codeB;
  315. elmN.innerHTML = codeN;
  316. }