<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FSmartClient%2FHistory</id>
		<title>JavaScript DHTML/SmartClient/History - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FSmartClient%2FHistory"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/SmartClient/History&amp;action=history"/>
		<updated>2026-04-05T04:00:32Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/SmartClient/History&amp;diff=3838&amp;oldid=prev</id>
		<title> в 10:00, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/SmartClient/History&amp;diff=3838&amp;oldid=prev"/>
				<updated>2010-05-26T10:00:24Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 10:00, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/SmartClient/History&amp;diff=3839&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/SmartClient/History&amp;diff=3839&amp;oldid=prev"/>
				<updated>2010-05-26T07:27:50Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Back button history management==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Isomorphic SmartClient&lt;br /&gt;
Copyright(c) 1998 and beyond Isomorphic Software, Inc.&lt;br /&gt;
&amp;quot;SmartClient&amp;quot; is a trademark of Isomorphic Software, Inc.&lt;br /&gt;
All rights reserved.&lt;br /&gt;
Open Source License&lt;br /&gt;
SmartClient source code, located under the source/ directory, and the resulting assembled modules &lt;br /&gt;
in isomorphic/system/modules/, as well as JavaScript and CSS files under the isomorphic/skins directory are &lt;br /&gt;
licensed under the terms of the GNU Lesser General Public License, version 3. &lt;br /&gt;
The text of the LGPLv3 license is available online at http://www.gnu.org/licenses/lgpl-3.0.html&lt;br /&gt;
If your project precludes the use of this license, or if you&amp;quot;d like to support SmartClient LGPL, &lt;br /&gt;
we encourage you to buy a commercial license.&lt;br /&gt;
Icon Experience Collection&lt;br /&gt;
Selected 16x16 icons within the isomorphic/skins directory are part of the Icon Experience collection &lt;br /&gt;
(http://www.iconexperience.ru) and may be freely used with any SmartClient components without charge, &lt;br /&gt;
but may not be used as part of screen designs separate from SmartClient components without a purchase &lt;br /&gt;
of a license from Icon Experience. We are working to replace these icons as soon as possible.&lt;br /&gt;
All other media found under the isomorphic/skins directory may be used under the LGPLv3.&lt;br /&gt;
Commercial Licenses&lt;br /&gt;
A number of commercial licenses are available for purchase. Please see http://smartclient.ru/license.&lt;br /&gt;
Warranty Disclaimer&lt;br /&gt;
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even &lt;br /&gt;
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General &lt;br /&gt;
Public License for more details.&lt;br /&gt;
Copyright 2001 and beyond Isomorphic Software, Inc. Last revised July 20, 2008. &lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;!-- The following code is revised from SmartClient demo code(SmartClient_70rc2_LGPL.zip).--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;HTML&amp;gt;&amp;lt;HEAD&amp;gt;&lt;br /&gt;
  &amp;lt;SCRIPT&amp;gt;var isomorphicDir=&amp;quot;isomorphic/&amp;quot;;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_History.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_Core.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_Foundation.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_Containers.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_Grids.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_Forms.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
    &amp;lt;SCRIPT SRC=isomorphic/system/modules/ISC_DataBinding.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
  &amp;lt;SCRIPT SRC=isomorphic/skins/SmartClient/load_skin.js&amp;gt;&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&amp;lt;BODY&amp;gt;&lt;br /&gt;
&amp;lt;SCRIPT&amp;gt;&lt;br /&gt;
DynamicForm.create({&lt;br /&gt;
    ID:&amp;quot;pane1&amp;quot;,&lt;br /&gt;
    autoDraw:false,&lt;br /&gt;
    titleOrientation:&amp;quot;top&amp;quot;,&lt;br /&gt;
    itemChange : function () {&lt;br /&gt;
        Page.setUnloadMessage(&amp;quot;Exiting the page now will lose changes&amp;quot;);&lt;br /&gt;
    },&lt;br /&gt;
    fields:[&lt;br /&gt;
        {name:&amp;quot;firstName&amp;quot;, title:&amp;quot;First Name&amp;quot;},&lt;br /&gt;
        {name:&amp;quot;lastName&amp;quot;, title:&amp;quot;Last Name&amp;quot;}&lt;br /&gt;
    ]&lt;br /&gt;
});&lt;br /&gt;
DynamicForm.create({&lt;br /&gt;
    ID:&amp;quot;pane2&amp;quot;,&lt;br /&gt;
    autoDraw:false,&lt;br /&gt;
    titleOrientation:&amp;quot;top&amp;quot;,&lt;br /&gt;
    itemChange : function () {&lt;br /&gt;
        Page.setUnloadMessage(&amp;quot;Exiting the page now will lose changes&amp;quot;);&lt;br /&gt;
    },&lt;br /&gt;
    fields:[&lt;br /&gt;
        {name:&amp;quot;officeNumber&amp;quot;, title:&amp;quot;Office Number&amp;quot;},&lt;br /&gt;
        {name:&amp;quot;mobileNumber&amp;quot;, title:&amp;quot;Mobile Number&amp;quot;}&lt;br /&gt;
    ]&lt;br /&gt;
});&lt;br /&gt;
DynamicForm.create({&lt;br /&gt;
    ID:&amp;quot;pane3&amp;quot;,&lt;br /&gt;
    autoDraw:false,&lt;br /&gt;
    titleOrientation:&amp;quot;top&amp;quot;,&lt;br /&gt;
    itemChange : function () {&lt;br /&gt;
        Page.setUnloadMessage(&amp;quot;Exiting the page now will lose changes&amp;quot;);&lt;br /&gt;
    },&lt;br /&gt;
    fields:[&lt;br /&gt;
        {name:&amp;quot;address&amp;quot;, title:&amp;quot;Street Address&amp;quot;},&lt;br /&gt;
        {name:&amp;quot;city&amp;quot;, title:&amp;quot;City&amp;quot;},&lt;br /&gt;
        {name:&amp;quot;state&amp;quot;, title:&amp;quot;State&amp;quot;},&lt;br /&gt;
        {name:&amp;quot;zip&amp;quot;, title:&amp;quot;Zip&amp;quot;}&lt;br /&gt;
    ]&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
// whenever history is navigated, call this callback&lt;br /&gt;
isc.History.registerCallback(&amp;quot;historyCallback(id)&amp;quot;);&lt;br /&gt;
// on page load, restore tabset state&lt;br /&gt;
isc.Page.setEvent(&amp;quot;load&amp;quot;, &amp;quot;restoreTabSetState()&amp;quot;);&lt;br /&gt;
function restoreTabSetState() {&lt;br /&gt;
    isc.Log.logWarn(&amp;quot;restoring state&amp;quot;);&lt;br /&gt;
    // if we have history state, our callback will fire.  Otherwise, we need to inspect the URL&lt;br /&gt;
    // to see if there&amp;quot;s history ID in there - this is what happens when the user bookmarks one&lt;br /&gt;
    // of the history URLs, closes the browser, opens a new one and then navigates to the bookmark.&lt;br /&gt;
    if (!isc.History.haveHistoryState()) {&lt;br /&gt;
        tabSet.jumpToTab(isc.History.getCurrentHistoryId() || 0);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
function historyCallback(id) {&lt;br /&gt;
    // the id is the tabNum and null is initial state - which is the first tab.&lt;br /&gt;
    tabSet.jumpToTab(id == null ? 0 : id);&lt;br /&gt;
}&lt;br /&gt;
TabSet.create({&lt;br /&gt;
  ID:&amp;quot;tabSet&amp;quot;,&lt;br /&gt;
  top:50,&lt;br /&gt;
  left:50,&lt;br /&gt;
  width:600,&lt;br /&gt;
  height:400,&lt;br /&gt;
    rememberHistory : true,&lt;br /&gt;
    jumpToTab : function (tabNum) {&lt;br /&gt;
        this.noHistory = true;&lt;br /&gt;
        // convert string to number&lt;br /&gt;
        this.selectTab(new Number(tabNum));&lt;br /&gt;
        this.noHistory = false;&lt;br /&gt;
    },&lt;br /&gt;
    tabSelected : function (tabNum) {&lt;br /&gt;
        if (!this.noHistory &amp;amp;&amp;amp; isc.Page.isLoaded()) isc.History.addHistoryEntry(tabNum);&lt;br /&gt;
    },&lt;br /&gt;
  tabs:[{title:&amp;quot;red&amp;quot;, pane:pane1, width:70},&lt;br /&gt;
      {title:&amp;quot;green&amp;quot;, pane:pane2, width:70},&lt;br /&gt;
      {title:&amp;quot;blue&amp;quot;, pane:pane3, width:70}]&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>