2017-01-04 2 views
1

私はブログ投稿を書くためのツールを用意しています。テキストエリアの値を取ることが可能かどうか疑問に思っていました - > base64でエンコード - >更新せずにURLハッシュとして設定しました。URLとしてのTextarea値ハッシュエンコードBase64

値は、テキストエリアとハッシュの間で等しくなければなりません。一方が更新すれば他方も更新されます。すべてのクライアントが行う必要があるように、URLを共有すると、テキストエリアが読み込まれます。

ありがとうございます!

+0

URLに含めることのできる文字数には制限があります。ブログの投稿はかなり長くなる可能性があるので、あなたはその限界に遭遇する可能性が高いです。関連する質問は次のとおりです。http://stackoverflow.com/questions/417142/what-is-the-maximum-length-of-a-url-in-different-browsers また、base64でエンコードされた文字列は、オリジナルより長くなっています。 – Assan

答えて

0

btoa()メソッドを使用して、文字列をbase64でエンコードすることができます。そこから、window.location.hashを使用してURLの断片を簡単に更新できます。あなたが代替実装が必要になり、従来のブラウザをサポートする必要があるので、もしbtoa()が< IE10でサポートされていないこと

$('textarea').on('input', function() { 
 
    var encodedValue = btoa(this.value); 
 
    window.location.hash = encodedValue; 
 
    
 
    $('div').text(encodedValue); // only to show the encoded output in this demo 
 
});
textarea { width: 100%; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<textarea></textarea> 
 

 
<div></div>

注:これを試してみてください。あなたがGoogleの場合、既に利用可能なたくさんのものがあります。

関連する問題