フォームクリエイターへautoKanaを適用したいです
という記事を拝見したのですが、
この記事内にあった
CompositionEventを利用してフリガナを取得する(その2)
ソース
https://github.com/VeryPinch/autoKana2
デモ
https://verypinch.github.io/autoKana2/
をformbridgeで適用できますでしょうか?
フォームクリエイターもformbridgeと同じ
サイボウズスタートアップス社のサービスなので
素人の私としては同じ要領でいけるのではないかと思ってますが、
もし可能であれば、
どの部分を変更すればよいかご教示いただきたいです。
kyodenさん
まず、このライブラリとForm Bridgeの相性はあまり良くないことが予測できます。
Form Bridgeはリアクティブにフォームの内容を変更しているため、把握できないイベントによって値が変更した場合、正しく値が認識できない可能性があります。
そのため、開発する際には十分動作確認を行うことをオススメします。
また、Form Bridgeには値の変更イベント(fb.events.fields.{fieldCode}.changed)がありますので、このイベントを利用して、カナ変換するのが望ましいでしょう。
以上、参考になりますでしょうか?
落合さん
https://github.com/VeryPinch/autoKana2
では自動カナ変換は難しいという認識でよろしいでしょうか?
もしフォームブリッジで自動カナ変換をする方法が他にありましたら、
ご教示いただけますと幸いです。
kyodenさん
https://github.com/VeryPinch/autoKana2
は jQuery を使ったDOMを直接操作するためのライブラリになりますが、Form Bridgeでは、用意されている state を変更することで、DOMの変更を行います。
kintoneと同じように、直接DOMの変更を行うのは望ましくありません。特に、フォームの値を変更する操作は行わないほうがいいでしょう。
> Form Bridgeには値の変更イベント(fb.events.fields.{fieldCode}.changed)がありますので、このイベントを利用して、カナ変換するのが望ましいでしょう。
と書いてあるように、変換元の変更イベントで変換先のフィールドの値にカナ変換した値を格納することで実現できるかと思います。
ただ、IMEはブラウザ毎に挙動が異なりますし、バージョンアップで挙動が変わることもあるため、十分注意が必要でしょう。
autoKana2 でも個別にブラウザやバージョン毎に例外操作を行っているようですね。
以上、参考になりますでしょうか?
system
(system)
クローズされました:
5
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。