Fork
2
Fav
4
View
3823
  • Play

Fullscreen

Smart Phone

Fork tree

  • Readme
  • JavaScript 62 lines
  • HTML 3 lines
  • CSS 9 lines

本来はua判別してiOS、Mac以外で使います。

iOSとMac Safari(Firefoxは発生しない!)でいくつかの絵文字が記号になってしまう現象は、

iPhone で「♥(黒塗りハート)」が絵文字になってしまう問題

によると0xFE0F(VS16と呼ぶそうだ)が必要らしい。

下記をiOS or Mac Safariで見比べるのがわかりやすかも。

VS16の追加有無による差の一覧

shortcode&Unicode対応表

HTMLエンティティでなく実際の文字コードがinput[type="text"]に入っているEmoji Cheat Sheetから作成。 ただし、jsdo.itの仕様でHTMLエンティティ化されてしまっている。

shortcode判定

絵文字変換のためのshortcodeを引き当てるためにUnicodeの1文字ごとループや文字コード取得が可能な javascript - でBMP以外のUnicode文字をきちんと扱う を利用した。

shortcode不具合

:raising_hand: emojify.jsをCDN利用するemojify-cdnに含まれていなかったので追加。

:disappointed_relieved: 同様にemojify-cdnの定義(正規表現)で意図せずisappointed_relieved:と変わってしまっていたので定義順を優先することで対応。

:athletic_shoe: emojify.jsでは:shoe:だったので修正。

:footprints: emojify.jsでは:feet:だったので修正。

:onehundred:100:

:eightball::8ball:

:onetwothreefour::1234:

:raising_hand:を単純追加。

以下も単純追加だが、画像なし。 :package: :sparkle: :back:

それとfaceマークの:satisfied:emojify.jsと違う。 ただ、これGitHubのコミットミスぽい。

対応絵文字

shortcode&Unicode対応表作成時に参照した表が189文字だけでなくemojify.jsが用意している絵文字(の画像)は約850文字分にも対応。

ただし、画像リンク切れ(cdnで見当たらない)、変換不可(emojify.jsでshortcodeが網羅されてない)が少し残っています。

(今後の人種バリエーションとかはどうなるんだろう・・・)

  • iOS絵文字のクロスプラットフォーム(by emojify.js)
  • emojify-cdn.js
  • jQuery v2.1.0
  • unicode.js
  • iOS絵文字のクロスプラットフォーム(by emojify.js)

play

Complete!

Description What kind of game?

Control Device

jsdo.it websocket controller

Mouse

keyboard

smartphone

Fullscreen

Default Panel

Size

  • Width: px
  • Height: px

code

QR Code

Discussion

Questions on this code?

Tags

Favorite by

Forked

sort by