0

PhoneGap を使用して開発された iOS アプリケーションは、大きな HTML コンテンツをユーザーに表示します。ユーザーはテキストの一部を太字にしたり、下線を引いたりできますが、既存のテキストを追加または削除しないでください。

ということで、HTMLではdivのcontentEditableをデフォルトで「false」に設定しています。execCommand() を使用して、選択したテキストをフォーマットします。ユーザーがテキストを選択して「太字」ボタンをクリックすると、execCommand() を実行する前に contentEditable を「true」に変更し、その後「false」に戻します。execCommand() は、Safari を含むすべてのデスクトップ ブラウザーで期待どおりにテキストを太字にしますが、iPhone/iPad ではそうではありません。

あなたの助けは非常に高く評価されています。

サンプル コード: (iOS 5.1 シミュレーターでテストしました)

<html>
<head>
<script>
    function bold()
    {
        var content = document.getElementById("content");
        content.contentEditable = true;
        //document.body.contentEditable = true;
        var result = document.execCommand('bold', false, null);
        content.contentEditable = false;
        //document.body.contentEditable = false;
    };
</script>
</head>
<body>
    <div id="content">this is the same text used for testing...</div>
    <br><br>
    <input type="button" value="bold" onclick="javascript: bold();"/>
</body>
</html>
4

0 に答える 0