<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel rdf:about="https://let.hatelabo.jp/IwamotoTakashi/rss">
    <link>https://let.hatelabo.jp/IwamotoTakashi/rss</link>
    <description></description>
    <title>Bookmarklets from IwamotoTakashi</title>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="https://let.hatelabo.jp/IwamotoTakashi/let/gYC-xfPflZfAJg"/>
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="https://let.hatelabo.jp/IwamotoTakashi/let/gYC-xfPflZfAJg">
    <link>https://let.hatelabo.jp/IwamotoTakashi/let/gYC-xfPflZfAJg</link>
    <dc:date>2012-05-30T13:35:47Z</dc:date>
    <description>web storage viewer</description>
    <dc:creator>IwamotoTakashi</dc:creator>
    <title>[Let] view web storage</title>
    <content:encoded>&lt;a href="javascript:%22https%3A%2F%2Flet.st-hatelabo.com%2FIwamotoTakashi%2Flet%2FgYC-xfPflZfAJg.bookmarklet.js%20%28arg%29%22.replace%28%2F%28%5CS%2B%29%5Cs%2B%28%5CS%2A%29%2F%2Cfunction%28s%2Curl%2Carg%29%7Bs%3Ddocument.createElement%28%22script%22%29%3Bs.charset%3D%22utf-8%22%3Bs.src%3Durl%2B%22%3Fs%3D%22%2BencodeURIComponent%28arg%29%3Bdocument.body.appendChild%28s%29%7D%29%3Bvoid%280%29%3B"&gt;view web storage&lt;/a&gt;&lt;pre&gt;/*
 * @title view web storage
 * @description web storage viewer
 * @include http://*
 * @license MIT License
 * @require jquery
 */

var css = [
'body {',
'	margin: 0;',
'	padding: 0;',
'}',
'h1 {',
'	font-size: 20px;',
'	text-align: center;',
'	padding: 10px;',
'	margin: 0;',
'}',
'h2 {',
'	font-size: 18px;',
'	text-align: center;',
'	padding: 10px;',
'	background: #EEE;',
'}',
'table {',
'	width: 100%;',
'	border-collapse: collapse;',
'	font-size: 14px;',
'}',
'td, th {',
'	border: 1px solid #333;',
'	padding: 5px;',
'}',
'th {',
'	background: #e2e7ff;',
'}',
].join('');

var html = [
'&amp;lt;h1&amp;gt;storage確認ページ&amp;lt;/h1&amp;gt;',
'&amp;lt;h2&amp;gt;sessionStorage&amp;lt;/h2&amp;gt;',
'&amp;lt;table id=&amp;quot;sessionStorage&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;30%&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;50%&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;20%&amp;quot;&amp;gt;',
'	&amp;lt;tr&amp;gt;',
'		&amp;lt;th&amp;gt;キー&amp;lt;/th&amp;gt;',
'		&amp;lt;th&amp;gt;値&amp;lt;/th&amp;gt;',
'		&amp;lt;th&amp;gt;削除&amp;lt;/th&amp;gt;',
'	&amp;lt;/tr&amp;gt;',
'&amp;lt;/table&amp;gt;',
'',
'&amp;lt;h2&amp;gt;localStorage&amp;lt;/h2&amp;gt;',
'&amp;lt;table id=&amp;quot;localStorage&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;30%&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;50%&amp;quot;&amp;gt;',
'	&amp;lt;col width=&amp;quot;20%&amp;quot;&amp;gt;',
'	&amp;lt;tr&amp;gt;',
'		&amp;lt;th&amp;gt;キー&amp;lt;/th&amp;gt;',
'		&amp;lt;th&amp;gt;値&amp;lt;/th&amp;gt;',
'		&amp;lt;th&amp;gt;削除&amp;lt;/th&amp;gt;',
'	&amp;lt;/tr&amp;gt;',
'&amp;lt;/table&amp;gt;'
].join('');

$('head').empty().append( $('&amp;lt;style&amp;gt;').text(css) );
$('body').empty().append( html );

[&amp;quot;sessionStorage&amp;quot;, &amp;quot;localStorage&amp;quot;].forEach(function(storageName) {
	var storage = window[storageName];
	var $table = $(&amp;quot;#&amp;quot; + storageName);
	var $rm = $(&amp;quot;&amp;lt;button&amp;gt;&amp;quot;).text(&amp;quot;削除&amp;quot;).click(function() {
		var $tr = $(this).parents(&amp;quot;tr&amp;quot;);
		if (window.confirm(&amp;quot;削除しますか？&amp;quot;)) {
			var key = $tr.find(&amp;quot;td:first&amp;quot;).text();
			storage.removeItem(key);
			$tr.fadeOut();
		}
	});
	var key,val;
	for (var i = 0, len = storage.length; i &amp;lt; len; i++) {
	  key = storage.key(i);
	  val = storage[key];
	  $(&amp;quot;&amp;lt;tr&amp;gt;&amp;quot;)
		.append( $(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).text(key) )
		.append( $(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).text(val) )
		.append( $(&amp;quot;&amp;lt;td&amp;gt;&amp;quot;).append($rm.clone(true)) )
		.appendTo($table);
	};
});
&lt;/pre&gt;</content:encoded>
  </item>
</rdf:RDF>
