Текстовый редактор wysihtml5 в iOS UIWebView

Я пытаюсь использовать простую реализацию wysihtml5, чтобы иметь возможность выполнять расширенное редактирование текста (и хранить html напрямую, чтобы иметь возможность сохранять форматирование в стандартном формате).

Для этого я реализовал wysihtml5, как это

<form>
    <textarea id="textarea"></textarea>
</form>

<script src="./wysihtml5/parser_rules/simple.js"></script>
<script src="./wysihtml5/dist/wysihtml5-0.3.0.js"></script>
<script>    
  var editor = new wysihtml5.Editor("textarea", {
    parserRules:    wysihtml5ParserRules,
    useLineBreaks:  false
  });
</script>

Чтобы иметь возможность манипулировать им в iOS, я использую stringByEvaluatingJavaScriptFromString как

- (void) setText:(NSString *)text
{                              
    [self.webView 
        stringByEvaluatingJavaScriptFromString:[NSString 
                                 stringWithFormat:@"editor.setValue(%@)", text]];
}
- (NSString *)getText
{
    NSString *text = [self.webView 
                    stringByEvaluatingJavaScriptFromString:@"editor.getValue()"];
    return text;
}

Однако ни set не работает, ни get (всегда возвращает пустую строку). Есть какие-нибудь подсказки?

1 ответ

- (void)insertHTMLContent:(NSString *)HTMLBody
{
    if (HTMLBody) {
        NSString *query = [NSString stringWithFormat:@"editor.composer.commands.exec('insertHTML', '%@')", HTMLBody];
        [self stringByEvaluatingJavaScriptFromString:query];
    }
}

- (NSString *)getContentHtml {
    return [self stringByEvaluatingJavaScriptFromString: @"editor.getValue()"];
}
Другие вопросы по тегам