{"id":25754,"date":"2017-05-13T03:01:18","date_gmt":"2017-05-12T17:01:18","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/ITblog\/?p=25754"},"modified":"2017-05-13T08:17:08","modified_gmt":"2017-05-12T22:17:08","slug":"web-application-history-object-primer-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/web-application-history-object-primer-tutorial\/","title":{"rendered":"Web Application History Object Primer Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/history.html\"><img decoding=\"async\" style=\"float:left;border: 15px solid pink;\" alt=\"Web Application History Object Primer Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/history.jpg\" title=\"Web Application History Object Primer Tutorial\"  \/><\/a><p class=\"wp-caption-text\">Web Application History Object Primer Tutorial<\/p><\/div>\n<p>It&#8217;s very instructive to take a look at an Object Flowchart for a web page.  <em>&#8220;JavaScript &amp; Ajax&#8221; seventh edition by Tom Negrino and Dori Smith<\/em> has one such Object Flowchart, and was intrigued by the <i>window<\/i> object&#8217;s <i>history[]<\/i> array entry that looked like below &#8230;<\/p>\n<div style='width:280px;overflow:hidden;'><img src='http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/history.jpg' title='history'><\/img><\/div>\n<p> &#8230; which made me curious to find out if a web page you are on, on a tab of a web brower can &#8220;purloin&#8221; the knowledge that web browser has about URLs and web page titles it has concerning the browsing history of web pages on that tab.  But as we delved, and created today&#8217;s simple <a title='history.html' href='http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/history.html_GETME'>history.html<\/a> <a title='Click picture' href='http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/history.html'>live run<\/a> web application and read a bit off the net we realized what a security breach that would be to allow access to this information for a web page.<\/p>\n<p>Nevertheless you can glean &#8230;<\/p>\n<ul>\n<li>window.<i>history.length<\/i> to find out how many web browsing history pages there have been (on the current web browser tab)<\/li>\n<li>use Javascript <i>history<\/i> object methods <i>back()<\/i> and <i>forward()<\/i> and <i>go()<\/i> to navigate to those web browser &#8220;tab browsing history&#8221; URLs backwards or forwards, and the web browser Back or Forward buttons would do<\/li>\n<\/ul>\n<p>Our small web application explores this a little today for your interest and perusal.<\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d25754' onclick='var dv=document.getElementById(\"d25754\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/javascript\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d25754' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s very instructive to take a look at an Object Flowchart for a web page. &#8220;JavaScript &amp; Ajax&#8221; seventh edition by Tom Negrino and Dori Smith has one such Object Flowchart, and was intrigued by the window object&#8217;s history[] array &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/web-application-history-object-primer-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,37],"tags":[123,458,566,576,652,997,1319,1404,1583],"class_list":["post-25754","post","type-post","status-publish","format-standard","hentry","category-elearning","category-tutorials","tag-back-button","tag-forward-button","tag-history","tag-html","tag-javascript","tag-programming","tag-tutorial","tag-web-browser","tag-window"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/25754"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=25754"}],"version-history":[{"count":4,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/25754\/revisions"}],"predecessor-version":[{"id":30188,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/25754\/revisions\/30188"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=25754"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=25754"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=25754"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}