国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

解決 slate 編輯器在 safari 下的兼容問題及中文輸入法光標問題

ispring / 1384人閱讀

摘要:前言用過編輯器的都知道它對于中文輸入有以下兼容性問題在瀏覽器下,輸入中文是,編輯區的光標始終停在拼音的前面不影響輸入,但體驗很糟在等支持方法的瀏覽器下無法使用輸入法輸入中文使用的也是編輯器,但它對底層做了很多修改,解決了這些問題。

前言

用過 slate 編輯器的都知道它對于中文輸入有以下兼容性問題:

在 chrome 瀏覽器下,輸入中文是,編輯區的光標始終停在拼音的前面(不影響輸入,但體驗很糟)

在 safari 等支持 onbeforeinput 方法的瀏覽器下(HAS_INPUT_EVENTS_LEVEL_2)無法使用輸入法輸入中文

GitBook 使用的也是 slate 編輯器,但它對 slate 底層做了很多修改,解決了這些問題。在我對比 gitbook/slate 與 slate 時,沒有找到解決方案。

后來,我在 slate 的 issue 里查找該問題,找到了一些不錯的回答。

環境:slate 0.47.1 slate-react 0.22.1

光標停留在拼音前的問題

參考 pull request 。找到相關源代碼,修改即可。

按照上述代碼修改之后,發現光標問題解決了,且 safari 瀏覽器下也有了一些小變化:輸入法能正常工作了,但是最后的輸入內容不會輸入到 瀏覽器內。

safari 輸入問題

參考 issue 。最后面用戶 hudk114 的評論里有提到,需要在 onCompositionEnd 時,根據是否需要插入數據(HAS_INPUT_EVENTS_LEVEL_2 為真時),調用 edit.insertText 插入數據。

這樣寫就行:

const isSynthetic = !!event.nativeEvent
if (isSynthetic && HAS_INPUT_EVENTS_LEVEL_2){
  editor.insertText(event.data);
}

修改了這兩處之后,輸入中文的問題即可解決。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/110205.html

相關文章

  • 格式化的場景下,React input 的光標的處理辦法

    摘要:具體表現是什么樣的呢圖安卓下不期望的輸入行為可以看到,在安卓手機下每次格式化發生的時候,本來應該一直在最后的光標會錯格一位,導致連續輸入出現問題。 今天要來說的是有關于有數值格式化的場景中,React input 光標的一些異常的表現和對應的處理辦法。故事要從一個 issue 說起,有用戶反映在使用 NumberField 組件輸入時安卓下會出現光標位置異常,導致連續輸入會達不到期望的...

    cheng10 評論0 收藏0
  • 手機端頁面項目中遇到的一些問題解決辦法(持續更新)

    摘要:解決頁面使用在上滑動卡頓的問題首先你可能會給頁面的和增加了然后就可能造成上頁面滑動的卡頓問題。頁面橡皮彈回效果遮擋頁面選項卡有時和的去除掉問題可能就沒有了。該行無文字時,光標高度與的一致。 1.解決頁面使用overflow: scroll在iOS上滑動卡頓的問題? 首先你可能會給頁面的html和body增加了height: 100%, 然后就可能造成IOS上頁面滑動的卡頓問題。解決方案...

    teren 評論0 收藏0
  • 手機端頁面項目中遇到的一些問題解決辦法(持續更新)

    摘要:解決頁面使用在上滑動卡頓的問題首先你可能會給頁面的和增加了然后就可能造成上頁面滑動的卡頓問題。頁面橡皮彈回效果遮擋頁面選項卡有時和的去除掉問題可能就沒有了。該行無文字時,光標高度與的一致。 1.解決頁面使用overflow: scroll在iOS上滑動卡頓的問題? 首先你可能會給頁面的html和body增加了height: 100%, 然后就可能造成IOS上頁面滑動的卡頓問題。解決方案...

    wyk1184 評論0 收藏0
  • 手機端頁面項目中遇到的一些問題解決辦法(持續更新)

    摘要:解決頁面使用在上滑動卡頓的問題首先你可能會給頁面的和增加了然后就可能造成上頁面滑動的卡頓問題。頁面橡皮彈回效果遮擋頁面選項卡有時和的去除掉問題可能就沒有了。該行無文字時,光標高度與的一致。 1.解決頁面使用overflow: scroll在iOS上滑動卡頓的問題? 首先你可能會給頁面的html和body增加了height: 100%, 然后就可能造成IOS上頁面滑動的卡頓問題。解決方案...

    Cristic 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<