リンクタグ生成

by ethertank

HTML

<ul>
    <li>Bookmarklet: <a href="javascript:(function(){var%20a=document.createElement(%22a%22),u=location.href,t=document.title||u,e=(function(){var%20map={'<':'&lt;','>':'&gt;','&':'&amp;','%22':'&quot;'},r=function(s){return%20map[s];};return%20function(S){return%20S.replace(/<|>|&|%22/g,r);};})(),t=e(t);a.href=e(u);a.title=a.innerText=t;prompt(t,a.outerHTML);})();">リンクタグ生成-ethertank-20121211</a></li>
</ul>

JavaScript

/*
javascript: (function() {
    var a = document.createElement("a"),
        u = location.href,
        t = document.title || u,
        e = (function() {
            var map = {
                '<': '&lt;',
                '>': '&gt;',
                '&': '&amp;',
                '"': '&quot;'
            },
            r = function(s) {
                return map[s];
            };

            return function(S) {
                return S.replace(/<|>|&|"/g, r);
            };
        })(),
        t = e(t);

    a.href = e(u);
    a.title = a.innerText = t;

    prompt(t, a.outerHTML);
})();
*/

/*
&quot;
&gt;
&#39;
&amp;
&gt;
&lt;

<title>&lt;var&gt; - HTML | MDN</title>
<title>&quot;&gt;&#39;&amp;&gt;&lt; - jsFiddle demo</title>

*/