Chrome で Rangy を使用しようとしていますが、Serializer および WrappedSelection モジュールが Chrome でサポートされていないようです。Rangy を適切に init() しなかったのか、それとも他の間違いを犯したのかはわかりません。console.log(rangy.modules) を実行したところ、Serializer と WrappedSelection がサポートされていないことがわかりました。
空の Chrome エクステンションを作成しました。manifest.js には、必要な 7 つの Rangy js ファイルと jQuery.js が含まれています。以下は私のscript.jsの内容です:
function rangyTest() {
rangy.init();
console.log(rangy.modules);
var value;
$("body").append( "<input type=\"button\" id=\"serializeButton\" value=\"Serialize selection\">" );
$("body").append( "<input type=\"button\" id=\"deserializeButton\" value=\"Restore selection\">" );
$('#serializeButton').click(function() {
value = rangy.serializeSelection();
});
$('#deserializeButton').click(function() {
rangy.deserializeSelection(value);
});
}