<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-29337664</id><updated>2011-09-25T16:52:25.958Z</updated><title type='text'>JS Playground</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-29337664.post-9006645205678543216</id><published>2008-12-14T12:49:00.002Z</published><updated>2008-12-14T12:56:58.698Z</updated><title type='text'>How to make div clickable</title><content type='html'>I saw on some websites, that they don't know how to make div's clickable. So here is a simple solution.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;function makeClickable(id){&lt;br /&gt;    var elm=document.getElementById(id);&lt;br /&gt;    if (elm){&lt;br /&gt;        var ahref=elm.getElementsByTagName('a');&lt;br /&gt;        for (var j=0;j&amp;lt;ahref.length;j++){&lt;br /&gt;            var href=ahref[j].href;&lt;br /&gt;            elm.onclick=function(){&lt;br /&gt;                window.location=href;&lt;br /&gt;                return false;&lt;br /&gt;            };&lt;br /&gt;        }&lt;br /&gt;        var every=elm.childNodes;&lt;br /&gt;        for (var i=0;i&amp;lt;every.length;i++){&lt;br /&gt;            if (document.uniqueID){&lt;br /&gt;                every[i].style.cursor='hand';&lt;br /&gt;            }&lt;br /&gt;            else{&lt;br /&gt;                every[i].style.cursor='pointer';&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;window.onload=function init(){&lt;br /&gt;    makeClickable('yourId');    //edit here&lt;br /&gt;    makeClickable('anotherId'); //another id here&lt;br /&gt;};&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;This script will find id in div and make parent div clickable. That is all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-9006645205678543216?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/9006645205678543216/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=9006645205678543216' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/9006645205678543216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/9006645205678543216'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2008/12/how-to-make-div-clickable.html' title='How to make div clickable'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-6646968627694786589</id><published>2008-12-14T12:35:00.005Z</published><updated>2008-12-14T12:45:40.048Z</updated><title type='text'>Russian transcriptor</title><content type='html'>It is already long time from last post. So just quick post. I have made a bookmarklet based on Martin Žantovský Transkriptor founded on web. It is not online already so here is a my bookmarklet version of that script. It is very helpfully on russian forums. In new blogger it seems impossible to add bookmarklet, so you will find it here &lt;a href="http://xy.wz.cz/example6/transkriptor/"&gt;Transcriptor&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-6646968627694786589?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/6646968627694786589/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=6646968627694786589' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/6646968627694786589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/6646968627694786589'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2008/12/russian-transcriptor.html' title='Russian transcriptor'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-117071262653701886</id><published>2007-02-05T21:51:00.000Z</published><updated>2007-03-12T23:10:04.160Z</updated><title type='text'>Scriptswitcher in action</title><content type='html'>Maybe I was not able to clearly explain what I mean in my last post about &lt;a href="http://js-playground.blogspot.com/2006/12/why-people-dont-make-scriptswitcher.html"&gt;scriptswitcher&lt;/a&gt;. Last few days I worked on new website, where you can check real example of this scriptswitcher method. Site is here &lt;a href="http://kongresove-sluzby.cz"&gt;Kongresové služby&lt;/a&gt;, scriptswicher is in left column under menu.&lt;br /&gt; Due to comment in previous post I change code little bit. Switcher was not very friendly. But I am not php coder, so there may be something wrong. Here it is:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;?php session_start();&lt;br /&gt;if(empty($_GET['scriptsrc'])){&lt;br /&gt;if(empty($_COOKIE['scriptsrc'])){$js_name="scriptloader";}&lt;br /&gt;else{$js_name=$_COOKIE['scriptsrc'];}&lt;br /&gt;}&lt;br /&gt;else{$js_name=$_GET['scriptsrc'];}&lt;br /&gt;setcookie("scriptsrc", $js_name, time()+(60*60*24*30), "/", ".kongresove-sluzby.cz");&lt;br /&gt;$_GET['scriptsrc']=$js_name;&lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript" src="&amp;lt;?php echo $js_name?&amp;gt;.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;        &amp;lt;form action="&amp;lt;?php echo $_SERVER['SCRIPT_NAME']?&amp;gt;" method="get"&amp;gt;&lt;br /&gt;        &amp;lt;fieldset id="switcher"&amp;gt;&lt;br /&gt;            &amp;lt;legend&amp;gt;Javascript switcher&amp;lt;/legend&amp;gt;&lt;br /&gt;            &amp;lt;input type="hidden" class="hide" name="scriptsrc" &amp;lt;?php if($js_name=="scriptloader"){echo" value=\"none\"";}else{echo" value=\"scriptloader\"";}?&amp;gt; /&amp;gt;&lt;br /&gt;            &amp;lt;input type="submit"&amp;lt;?php if($js_name=="scriptloader"){echo" value=\"Switch off javascript\"";}else{echo" value=\"Switch on javascript\"";}?&amp;gt; /&amp;gt;&lt;br /&gt;        &amp;lt;/fieldset&amp;gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-117071262653701886?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/117071262653701886/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=117071262653701886' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/117071262653701886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/117071262653701886'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2007/02/scriptswitcher-in-action.html' title='Scriptswitcher in action'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-116741468714907938</id><published>2006-12-29T16:57:00.000Z</published><updated>2007-03-02T09:03:25.106Z</updated><title type='text'>Why people don´t make scriptswitcher</title><content type='html'>&lt;p&gt;A lot of people is talking about an unobtrusive javascript. OK, but I don't understand why they have not came with idea to add users some possibility to switch off javascript on sites. It shouldn't be to complicated, if your scripts are really unobtrusive.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;In case that of onobtrusive js:&lt;/p&gt;&lt;br /&gt;&lt;ol&gt;  &lt;br /&gt;&lt;li&gt;site work completely without script&lt;/li&gt;&lt;br /&gt;&lt;li&gt;script is in your head section&lt;/li&gt;&lt;br /&gt;&lt;li&gt;if you are clever all are in one script&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;even if you need script at the end of your body tag you can add it into one single script&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt; &lt;br /&gt;&lt;p&gt;Anyway you can never know, that in some end user browser is problematic with your script. So why donť let user to simple switch them off without complicated browser settings.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;How to add script to another script&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Bellow is simple example how to include scripts in another header script&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;function loadAnotherScript(){&lt;br /&gt;AnotherScript=document.body.appendChild(document.createElement('script'));&lt;br /&gt;AnotherScript.type='text/javascript';&lt;br /&gt;AnotherScript.src='script-file-url.js';&lt;br /&gt;AnotherScript.setAttribute('defer','defer')&lt;br /&gt;}&lt;br /&gt;//use some onload event&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;This technic will allow you to keep all the scripts in one file and in combination with php you can any time send maximum two scripts for a site. One header script and one through this header script.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;How to send php as js?&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Again very simple thing.&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;header("Content-type: text/javascript");&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;Why to send php as js? Because than you can split javascript to small snippets a put them together on final site. Try to study this keywords &lt;strong&gt;dynamic css with php&lt;/strong&gt; on Google to see what I mean, because it again seems no one do such things with js.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Final Scriptswitcher, what I am talking about.&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;My php and english language are not good, so sorry for that. For this reason I change someone else &lt;a href="http://um-fritz.de/styleswitcher"&gt;styleswitcher code&lt;/a&gt;, which looks very simple for this demonstration and can be found at a lot germans phorums. So code is here:&lt;/p&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;if(empty($_GET['scriptsrc'])){&lt;br /&gt;if(empty($_COOKIE['scriptsrc'])){$js_name="site";}&lt;br /&gt;else{$js_name=$_COOKIE['scriptsrc'];}&lt;br /&gt;}&lt;br /&gt;else{$js_name=$_GET['scriptsrc'];}&lt;br /&gt;setcookie("scriptsrc", $js_name, time()+(60*60*24*30), "/scriptswitcher/", ".xy.wz.cz");&lt;br /&gt;$_GET['scriptsrc']=$js_name;&lt;br /&gt;echo "&amp;lt;?xml version=\"1.0\" encoding=\"windows-1250\"?&amp;gt;\n";&lt;br /&gt;?&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs"&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;Scriptswitcher&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;meta http-equiv="Content-Type" content="text/html; charset=windows-1250" /&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript" src="&amp;lt;?php echo $js_name?&amp;gt;.js"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;form action="&amp;lt;?php echo $_SERVER['SCRIPT_NAME']?&amp;gt;" method="get"&amp;gt;&lt;br /&gt;&amp;lt;fieldset&amp;gt;&lt;br /&gt;&amp;lt;select name="scriptsrc"&amp;gt;&lt;br /&gt;&amp;lt;option value="site" selected="selected"&amp;gt;Default&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value="none"&amp;gt;None&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;lt;input type="submit" value="Switch Script" /&amp;gt;&lt;br /&gt;&amp;lt;/fieldset&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;h1&amp;gt;Scriptswitcher&amp;lt;/h1&amp;gt;&lt;br /&gt;&amp;lt;ul&amp;gt;&lt;br /&gt;&amp;lt;li&amp;gt;&amp;lt;a href="index.php?scriptsrc=&amp;lt;?php echo $js_name?&amp;gt;" title="Script switch"&amp;gt;Script switch&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;&amp;lt;/ul&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;h3&gt;Example:&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;Javascript &lt;a href="http://xy.wz.cz/scriptswitcher/"&gt;Scriptswitcher&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;So I thing here is a long way for scripters to make they site really unobtrusive, and I hope someone more experienced in js, php and english will rewrite this idea to real english and explain everything what I forget to.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-116741468714907938?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/116741468714907938/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=116741468714907938' title='Počet komentářů: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/116741468714907938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/116741468714907938'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/12/why-people-dont-make-scriptswitcher.html' title='Why people don´t make scriptswitcher'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-116741123705434693</id><published>2006-12-29T16:48:00.000Z</published><updated>2006-12-29T16:53:57.066Z</updated><title type='text'>Some select replacement</title><content type='html'>Just short post. I was trying to find out some simple unobtrusive select replacement, but I was not succesfull. Just some using to big libraries for such simple thing. So I decide to make one. You can find my solution here &lt;a href="http://xy.wz.cz/example9/select.html"&gt;Simple select replacement&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-116741123705434693?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/116741123705434693/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=116741123705434693' title='Počet komentářů: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/116741123705434693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/116741123705434693'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/12/some-select-replacement.html' title='Some select replacement'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-115804413769278929</id><published>2006-09-12T06:50:00.000Z</published><updated>2006-09-12T06:55:37.703Z</updated><title type='text'>Email to unicode bookmarklet</title><content type='html'>Yesterday I obtain an e-mail with bugreport for some old script. So when I found out, that someone using it, I decided to create an bookmarklet for email conversion. It  prevents a spam well. &lt;a href="javascript:void(z=document.body.appendChild(document.createElement('script')));void(z.language='javascript');void(z.type='text/javascript');void(z.src='http://xy.wz.cz/example8/to_unicode.js');void(z.charset='windows-1250');"&gt;Email to Unicode bookmarklet&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-115804413769278929?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/115804413769278929/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=115804413769278929' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115804413769278929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115804413769278929'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/09/email-to-unicode-bookmarklet.html' title='Email to unicode bookmarklet'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-115762443781319069</id><published>2006-09-07T09:52:00.000Z</published><updated>2006-09-07T10:28:45.493Z</updated><title type='text'>Universal sudoku solver bookmarklet</title><content type='html'>After two weeks I will post something new here. Few days ago I found at server &lt;a href="http://www.linkuj.cz"&gt;linkuj.cz&lt;/a&gt; very interesting link: &lt;a href="http://blog.elfineer.cz/muj-boj-s-holandany"&gt;My fight with Hollanders&lt;/a&gt;.  It is in czech language about the fight with excellent Neederland sudoku solver. This article persuade me to try make something more universal. First I search on web some good solver script, which is small and quick enough. I decided to use this &lt;a href="http://homepage.ntlworld.com/chris.ovenden/js/sudoku.html"&gt;sudoku solver&lt;/a&gt;. Then I build a skeleton of sudoku table, written as dom generated and css styled table.  I add some features, like opacity changer, resizer and use one famous very old script for &lt;a href="http://boring.youngpup.net/2001/domdrag"&gt;drag support&lt;/a&gt;. Then I develop something like next tabindex focus, it means, that when you write a nuber, it's automaticly goes to next cell. When you fill up the input with space it's move to next also. So you dot't have to use mouse to move in sudoku grid. For resizing I use a small script developed by Habendorf at czech discussion board &lt;a href="http://diskuse.jakpsatweb.cz"&gt;Diskuse Jak Psát Web&lt;/a&gt;. So I hope I don't forget some credits and here is whole think &lt;a href="http://xy.wz.cz/example7/sudoku/"&gt;Universal sudoku solver bookmarklet&lt;/a&gt;. Just add to your favorites, use at some sudoku site, drag across the sudoku grid there, resize it to suite to sudoku size, fill it up, make it opaque to control it and press solve. Sometimes you will have to allow script to makes website run slow, because it countings a lot, but it's matter on your computer. When it is solved, just make it again opaque, drag it to side and fill the original grid. But don't forget, that &lt;span style="font-weight:bold;"&gt;using your own brain is the best investment to your feature&lt;/span&gt;. Well this is my script just very partly, I just use few scripts founded on www and put them together as a puzzle. So thanks to all people, who made those parts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-115762443781319069?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/115762443781319069/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=115762443781319069' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115762443781319069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115762443781319069'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/09/universal-sudoku-solver-bookmarklet.html' title='Universal sudoku solver bookmarklet'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-115563416552878095</id><published>2006-08-15T09:19:00.000Z</published><updated>2006-08-15T09:29:25.536Z</updated><title type='text'>Gallery bookmarklet</title><content type='html'>Yesterday I send here a script for simple DOM gallery. But I decided to upload another  one, because this one is much more easier. And why bookmarklet? Just test this link &lt;a href="javascript:void(z=document.body.appendChild(document.createElement('script')));void(z.language='javascript');void(z.type='text/javascript');void(z.src='http://xy.wz.cz/popup-galerie/galerie.js');void(z.charset='windows-1250');"&gt;gallery&lt;/a&gt; and you will see. You can try it also at this &lt;a href="http://xy.wz.cz/popup-galerie/"&gt;address&lt;/a&gt;, that implementation is made with no javascript alternative link. Whole source code including images, css, js and html is zipped for download &lt;a href="http://xy.wz.cz/popup-galerie/galerie.zip"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-115563416552878095?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/115563416552878095/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=115563416552878095' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115563416552878095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115563416552878095'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/08/gallery-bookmarklet.html' title='Gallery bookmarklet'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-115556101887239245</id><published>2006-08-14T13:09:00.000Z</published><updated>2006-08-14T13:10:18.886Z</updated><title type='text'>Simple unobtrusive DOM driven Autoplay gallery script</title><content type='html'>I decided to rewrite my old Autoplay gallery script. Now is it quiet configurable, just one thing&lt;br /&gt;for correct work is important. All used images has to be in one file with the same prefix and numbered&lt;br /&gt;star 1. For example file name: images, prefix: big, filetype:jpg. You can test it &lt;a href="http://xy.wz.cz/example4/"&gt;here&lt;/a&gt;,&lt;br /&gt;or  &lt;a href="http://xy.wz.cz/example4/example4.zip"&gt;download zipped html + css + js&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-115556101887239245?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/115556101887239245/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=115556101887239245' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115556101887239245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/115556101887239245'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/08/simple-unobtrusive-dom-driven-autoplay.html' title='Simple unobtrusive DOM driven Autoplay gallery script'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-114974663004528808</id><published>2006-06-08T06:03:00.000Z</published><updated>2006-06-08T06:03:50.053Z</updated><title type='text'></title><content type='html'>&lt;h1&gt;Bargraph as a CSS styled and JS counted table&lt;/h1&gt;&lt;br /&gt;&lt;p&gt;Inspirated by article at &lt;a href="http://www.khmerang.com/index.php?p=118"&gt; Khmerang.com&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This version does not use images and height of graph columns is automaticly counted by javascript.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;CSS Code:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;body {&lt;br /&gt;        background:#eee;&lt;br /&gt;        color:#333;&lt;br /&gt;}&lt;br /&gt;a {&lt;br /&gt;        color:#666;&lt;br /&gt;}&lt;br /&gt;a:hover {&lt;br /&gt;        color:#000;&lt;br /&gt;}&lt;br /&gt;table {&lt;br /&gt;        border-collapse:collapse;&lt;br /&gt;        width:49em;&lt;br /&gt;        font:.6em/2em Arial;&lt;br /&gt;}&lt;br /&gt;td {&lt;br /&gt;        padding:0;&lt;br /&gt;        margin:0;&lt;br /&gt;        vertical-align:bottom;&lt;br /&gt;        text-align:center;&lt;br /&gt;        background:#eee;&lt;br /&gt;}&lt;br /&gt;th {&lt;br /&gt;        background:#cdc;&lt;br /&gt;        border-bottom:.1em solid #666;&lt;br /&gt;}&lt;br /&gt;span {&lt;br /&gt;        display:block;&lt;br /&gt;        border-right:.1em solid #666;&lt;br /&gt;        border-top:.1em solid #ccc;&lt;br /&gt;        border-left:.1em solid #fff;&lt;br /&gt;        background:#cdc;&lt;br /&gt;        width:4em;&lt;br /&gt;        padding:0;&lt;br /&gt;        margin:0 .2em;&lt;br /&gt;}&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;JS Code&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;If you dont like javascript and want just use a css code you can uncomment line with span.innerHTML and script will help you to count, value of each span height.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;&lt;br /&gt;function AutoBarGraph(){&lt;br /&gt;var tr=document.getElementById('graph')&lt;br /&gt;var td=tr.getElementsByTagName('td');&lt;br /&gt;for(var i=0;i&amp;lt;td.length;i++){&lt;br /&gt;span=document.createElement('span')&lt;br /&gt;valHeight=parseFloat(td[i].childNodes[0].nodeValue)/6000;&lt;br /&gt;setTitle=td[i].childNodes[0].nodeValue;&lt;br /&gt;span.setAttribute('title',setTitle);&lt;br /&gt;//span.innerHTML='style=\"width:'+Math.round((setTitle/6000)*100)/100+'em\"';&lt;br /&gt;span.style.height=valHeight+'em';&lt;br /&gt;td[i].appendChild(span)&lt;br /&gt;}}&lt;br /&gt;if(document.childNodes){window.onload=AutoBarGraph};&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Example:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Test it on &lt;a href="http://xy.wz.cz/example3/"&gt;working example&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Tested in Firefox 0.7+, IE 5+, Opera 7.23+&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Use script and style as you want.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-114974663004528808?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/114974663004528808/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=114974663004528808' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114974663004528808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114974663004528808'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/06/bargraph-as-css-styled-and-js-counted.html' title=''/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-114968619555452344</id><published>2006-06-07T13:15:00.000Z</published><updated>2006-06-07T13:16:35.563Z</updated><title type='text'>Clear all inputs value on focus</title><content type='html'>&lt;h1&gt;Clear all inputs value on focus&lt;/h1&gt;&lt;br /&gt;&lt;p&gt;This small function help you to clear predefined value of all inputs on your website&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Code:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;function init(){&lt;br /&gt;var inp=document.getElementsByTagName('input');&lt;br /&gt;for(var i=0;i&amp;lt;;inp.length;i++){&lt;br /&gt;if(inp[i].type=='text'){&lt;br /&gt;inp[i].setAttribute('rel',inp[i].defaultValue)&lt;br /&gt;inp[i].onfocus=function(){&lt;br /&gt;if(this.value==this.getAttribute('rel')){this.value='';}&lt;br /&gt;else{return false;}}&lt;br /&gt;inp[i].onblur=function(){&lt;br /&gt;if(this.value==''){this.value=this.getAttribute('rel');}&lt;br /&gt;else{return false;}}&lt;br /&gt;inp[i].ondblclick=function(){this.value=this.getAttribute('rel')}&lt;br /&gt;}}}&lt;br /&gt;if(document.childNodes){window.onload=init}&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;You can use any onload event which suite to your needs. I am using this one:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;if(document.childNodes){window.onload=init}&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;, because it will works only when function is supported. It is just small prevention of error in MSIE 4&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Example:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Test it on styled &lt;a href="http://xy.wz.cz/example2/"&gt;working example&lt;/a&gt;. To view it in action just give some input focus.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Tested in Firefox 0.7+, IE 5+, Opera 7.23+&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Use script and style as you want.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-114968619555452344?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/114968619555452344/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=114968619555452344' title='Počet komentářů: 5'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114968619555452344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114968619555452344'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/06/clear-all-inputs-value-on-focus.html' title='Clear all inputs value on focus'/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29337664.post-114959350513527355</id><published>2006-06-06T11:17:00.000Z</published><updated>2006-06-06T14:30:22.640Z</updated><title type='text'></title><content type='html'>&lt;h2&gt;JS Generated print header content MSIE&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;function genCon(){&lt;br /&gt;var obl=document.getElementById('obal')&lt;br /&gt;var h1=obl.getElementsByTagName('h1')&lt;br /&gt;for(var i=0;i&amp;lt;h1.length;i++){&lt;br /&gt;var gen=document.createElement('pre');//impossible to create &amp;lt;br&amp;gt; with \n in span, that is why &amp;lt;pre&amp;gt;&lt;br /&gt;var textik=new Array('Pavlova 123/4 160 00 Praha 6 - Dejvice','tel:123 456 789','info@neco.cz','www.neco.cz');&lt;br /&gt;gen.appendChild(document.createTextNode(textik.join("\n")));&lt;br /&gt;gen.style.font='normal normal bold 12pt 2px \'Trebuchet MS\', \'Geneva CE\', lucida, sans-serif';&lt;br /&gt;gen.style.display='none';&lt;br /&gt;gen.className='iegen';&lt;br /&gt;h1[i].appendChild(gen);&lt;br /&gt;}}&lt;br /&gt;if(document.childNodes&amp;&amp;document.uniqueID){window.onload=genCon;}&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Generated Generated print header content Gecko and Opera: CSS&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;body{background:#fff !important;font-size:12pt;}/*every Opera version has different bug, opera 9 do not remove background in print style*/&lt;br /&gt;#navi,.obr,#patka{display:none;}&lt;br /&gt;#obsah,h1{width:auto;margin:0 5%;padding:0;border:0;float:none !important;color:black;background:transparent none;}&lt;br /&gt;div#obsah{margin-left:10%;padding-top:1em;border-top:1px solid #000;}&lt;br /&gt;a:link, a:visited{color:#444;background:transparent;font-weight:bold;text-decoration:underline;}&lt;br /&gt;#obsah a:link:after, #obsah a:visited:after{content:" (" attr(href) ") ";font-size:90%;}&lt;br /&gt;h1:after{content:'Pavlova 123/4 160 00 Praha 6 - Dejvice \00000a  tel:123 456 789 \00000a  info@neco.cz\00000a  www.neco.cz' !important;display:block;white-space:pre;font-size:12pt;}&lt;br /&gt;:before,:after{white-space:pre-line;}&lt;br /&gt;option{display:block;}&lt;br /&gt;h1 a{text-decoration:none !important;border:none;font-size:18pt;color:#000;}&lt;br /&gt;.iegen{display:block !important;}&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Result:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;This will add to print header just under &amp;lt;h1&amp;gt; this:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;pre&gt;&lt;br /&gt;Pavlova 123/4 160 00 Praha 6 - Dejvice&lt;br /&gt;tel:123 456 789&lt;br /&gt;info@neco.cz&lt;br /&gt;www.neco.cz&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;Example:&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Test what is this good for, on bit styled &lt;a href="http://xy.wz.cz/example1/"&gt;working example&lt;/a&gt;. To view it in action just choose print preview in your browser.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Tested in Firefox 0.7+, IE 5+, Opera 7.23+&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Use script and style as you want, don't steel design.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29337664-114959350513527355?l=js-playground.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://js-playground.blogspot.com/feeds/114959350513527355/comments/default' title='Komentáře k příspěvku'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29337664&amp;postID=114959350513527355' title='Počet komentářů: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114959350513527355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29337664/posts/default/114959350513527355'/><link rel='alternate' type='text/html' href='http://js-playground.blogspot.com/2006/06/js-generated-print-header-content-msie.html' title=''/><author><name>Mirek Komárek</name><uri>http://www.blogger.com/profile/10358720709913344243</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_DLBodsbKlhE/STmOvCFj14I/AAAAAAAAAKc/r3Q_Qdr3-5k/S220/m.png'/></author><thr:total>0</thr:total></entry></feed>
