<?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%2FPage_Components%2FImage_Drag</id>
		<title>JavaScript DHTML/Page Components/Image Drag - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FPage_Components%2FImage_Drag"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Page_Components/Image_Drag&amp;action=history"/>
		<updated>2026-04-05T04:00:33Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Page_Components/Image_Drag&amp;diff=3574&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/Page_Components/Image_Drag&amp;diff=3574&amp;oldid=prev"/>
				<updated>2010-05-26T10:00:10Z</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/Page_Components/Image_Drag&amp;diff=3575&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Page_Components/Image_Drag&amp;diff=3575&amp;oldid=prev"/>
				<updated>2010-05-26T07:26:27Z</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;==Dragging Images==&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;
 &amp;lt;!DOCTYPE html PUBLIC &amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot; &lt;br /&gt;
  &amp;quot;http://www.w3.org/tr/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
     Example File From &amp;quot;JavaScript and DHTML Cookbook&amp;quot;&lt;br /&gt;
     Published by O&amp;quot;Reilly &amp;amp; Associates&lt;br /&gt;
     Copyright 2003 Danny Goodman&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Recipe 13.11&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;
html {background-color:#cccccc}&lt;br /&gt;
body {background-color:#eeeeee; font-family:Tahoma,Arial,Helvetica,sans-serif; font-size:12px;&lt;br /&gt;
    margin-left:15%; margin-right:15%; border:3px groove darkred; padding:15px}&lt;br /&gt;
h1 {text-align:right; font-size:1.5em; font-weight:bold}&lt;br /&gt;
h2 {text-align:left; font-size:1.1em; font-weight:bold; text-decoration:underline}&lt;br /&gt;
.buttons {margin-top:10px}&lt;br /&gt;
&lt;br /&gt;
  #imgAWrap {position:absolute; left:35%; top:20%; width:230px; height:102px; &lt;br /&gt;
             border:solid black 1px; z-index:0}&lt;br /&gt;
  #imgBWrap {position:absolute; left:40%; top:25%; width:281px; height:100px; &lt;br /&gt;
             border:solid black 1px; z-index:0}&lt;br /&gt;
&amp;lt;/style&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/* ***********************************************************&lt;br /&gt;
Example 4-3 (DHTMLAPI.js)&lt;br /&gt;
&amp;quot;Dynamic HTML:The Definitive Reference&amp;quot;&lt;br /&gt;
2nd Edition&lt;br /&gt;
by Danny Goodman&lt;br /&gt;
Published by O&amp;quot;Reilly &amp;amp; Associates  ISBN 1-56592-494-0&lt;br /&gt;
http://www.oreilly.ru&lt;br /&gt;
Copyright 2002 Danny Goodman.  All Rights Reserved.&lt;br /&gt;
************************************************************ */&lt;br /&gt;
// DHTMLapi.js custom API for cross-platform&lt;br /&gt;
// object positioning by Danny Goodman (http://www.dannyg.ru).&lt;br /&gt;
// Release 2.0. Supports NN4, IE, and W3C DOMs.&lt;br /&gt;
// Global variables&lt;br /&gt;
var isCSS, isW3C, isIE4, isNN4, isIE6CSS;&lt;br /&gt;
// Initialize upon load to let all browsers establish content objects&lt;br /&gt;
function initDHTMLAPI() {&lt;br /&gt;
    if (document.images) {&lt;br /&gt;
        isCSS = (document.body &amp;amp;&amp;amp; document.body.style) ? true : false;&lt;br /&gt;
        isW3C = (isCSS &amp;amp;&amp;amp; document.getElementById) ? true : false;&lt;br /&gt;
        isIE4 = (isCSS &amp;amp;&amp;amp; document.all) ? true : false;&lt;br /&gt;
        isNN4 = (document.layers) ? true : false;&lt;br /&gt;
        isIE6CSS = (document.rupatMode &amp;amp;&amp;amp; document.rupatMode.indexOf(&amp;quot;CSS1&amp;quot;) &amp;gt;= 0) ? true : false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set event handler to initialize API&lt;br /&gt;
window.onload = initDHTMLAPI;&lt;br /&gt;
// Seek nested NN4 layer from string name&lt;br /&gt;
function seekLayer(doc, name) {&lt;br /&gt;
    var theObj;&lt;br /&gt;
    for (var i = 0; i &amp;lt; doc.layers.length; i++) {&lt;br /&gt;
        if (doc.layers[i].name == name) {&lt;br /&gt;
            theObj = doc.layers[i];&lt;br /&gt;
            break;&lt;br /&gt;
        }&lt;br /&gt;
        // dive into nested layers if necessary&lt;br /&gt;
        if (doc.layers[i].document.layers.length &amp;gt; 0) {&lt;br /&gt;
            theObj = seekLayer(document.layers[i].document, name);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Convert object name string or object reference&lt;br /&gt;
// into a valid element object reference&lt;br /&gt;
function getRawObject(obj) {&lt;br /&gt;
    var theObj;&lt;br /&gt;
    if (typeof obj == &amp;quot;string&amp;quot;) {&lt;br /&gt;
        if (isW3C) {&lt;br /&gt;
            theObj = document.getElementById(obj);&lt;br /&gt;
        } else if (isIE4) {&lt;br /&gt;
            theObj = document.all(obj);&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj = seekLayer(document, obj);&lt;br /&gt;
        }&lt;br /&gt;
    } else {&lt;br /&gt;
        // pass through object reference&lt;br /&gt;
        theObj = obj;&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Convert object name string or object reference&lt;br /&gt;
// into a valid style (or NN4 layer) reference&lt;br /&gt;
function getObject(obj) {&lt;br /&gt;
    var theObj = getRawObject(obj);&lt;br /&gt;
    if (theObj &amp;amp;&amp;amp; isCSS) {&lt;br /&gt;
        theObj = theObj.style;&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Position an object at a specific pixel coordinate&lt;br /&gt;
function shiftTo(obj, x, y) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isCSS) {&lt;br /&gt;
            // equalize incorrect numeric value type&lt;br /&gt;
            var units = (typeof theObj.left == &amp;quot;string&amp;quot;) ? &amp;quot;px&amp;quot; : 0 &lt;br /&gt;
            theObj.left = x + units;&lt;br /&gt;
            theObj.top = y + units;&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj.moveTo(x,y)&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Move an object by x and/or y pixels&lt;br /&gt;
function shiftBy(obj, deltaX, deltaY) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isCSS) {&lt;br /&gt;
            // equalize incorrect numeric value type&lt;br /&gt;
            var units = (typeof theObj.left == &amp;quot;string&amp;quot;) ? &amp;quot;px&amp;quot; : 0 &lt;br /&gt;
            theObj.left = getObjectLeft(obj) + deltaX + units;&lt;br /&gt;
            theObj.top = getObjectTop(obj) + deltaY + units;&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj.moveBy(deltaX, deltaY);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the z-order of an object&lt;br /&gt;
function setZIndex(obj, zOrder) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.zIndex = zOrder;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the background color of an object&lt;br /&gt;
function setBGColor(obj, color) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isNN4) {&lt;br /&gt;
            theObj.bgColor = color;&lt;br /&gt;
        } else if (isCSS) {&lt;br /&gt;
            theObj.backgroundColor = color;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the visibility of an object to visible&lt;br /&gt;
function show(obj) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.visibility = &amp;quot;visible&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the visibility of an object to hidden&lt;br /&gt;
function hide(obj) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.visibility = &amp;quot;hidden&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the x coordinate of a positionable object&lt;br /&gt;
function getObjectLeft(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (document.defaultView) {&lt;br /&gt;
        var style = document.defaultView;&lt;br /&gt;
        var cssDecl = style.getComputedStyle(elem, &amp;quot;&amp;quot;);&lt;br /&gt;
        result = cssDecl.getPropertyValue(&amp;quot;left&amp;quot;);&lt;br /&gt;
    } else if (elem.currentStyle) {&lt;br /&gt;
        result = elem.currentStyle.left;&lt;br /&gt;
    } else if (elem.style) {&lt;br /&gt;
        result = elem.style.left;&lt;br /&gt;
    } else if (isNN4) {&lt;br /&gt;
        result = elem.left;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the y coordinate of a positionable object&lt;br /&gt;
function getObjectTop(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (document.defaultView) {&lt;br /&gt;
        var style = document.defaultView;&lt;br /&gt;
        var cssDecl = style.getComputedStyle(elem, &amp;quot;&amp;quot;);&lt;br /&gt;
        result = cssDecl.getPropertyValue(&amp;quot;top&amp;quot;);&lt;br /&gt;
    } else if (elem.currentStyle) {&lt;br /&gt;
        result = elem.currentStyle.top;&lt;br /&gt;
    } else if (elem.style) {&lt;br /&gt;
        result = elem.style.top;&lt;br /&gt;
    } else if (isNN4) {&lt;br /&gt;
        result = elem.top;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the rendered width of an element&lt;br /&gt;
function getObjectWidth(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (elem.offsetWidth) {&lt;br /&gt;
        result = elem.offsetWidth;&lt;br /&gt;
    } else if (elem.clip &amp;amp;&amp;amp; elem.clip.width) {&lt;br /&gt;
        result = elem.clip.width;&lt;br /&gt;
    } else if (elem.style &amp;amp;&amp;amp; elem.style.pixelWidth) {&lt;br /&gt;
        result = elem.style.pixelWidth;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the rendered height of an element&lt;br /&gt;
function getObjectHeight(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (elem.offsetHeight) {&lt;br /&gt;
        result = elem.offsetHeight;&lt;br /&gt;
    } else if (elem.clip &amp;amp;&amp;amp; elem.clip.height) {&lt;br /&gt;
        result = elem.clip.height;&lt;br /&gt;
    } else if (elem.style &amp;amp;&amp;amp; elem.style.pixelHeight) {&lt;br /&gt;
        result = elem.style.pixelHeight;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Return the available content width space in browser window&lt;br /&gt;
function getInsideWindowWidth() {&lt;br /&gt;
    if (window.innerWidth) {&lt;br /&gt;
        return window.innerWidth;&lt;br /&gt;
    } else if (isIE6CSS) {&lt;br /&gt;
        // measure the html element&amp;quot;s clientWidth&lt;br /&gt;
        return document.body.parentElement.clientWidth&lt;br /&gt;
    } else if (document.body &amp;amp;&amp;amp; document.body.clientWidth) {&lt;br /&gt;
        return document.body.clientWidth;&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
// Return the available content height space in browser window&lt;br /&gt;
function getInsideWindowHeight() {&lt;br /&gt;
    if (window.innerHeight) {&lt;br /&gt;
        return window.innerHeight;&lt;br /&gt;
    } else if (isIE6CSS) {&lt;br /&gt;
        // measure the html element&amp;quot;s clientHeight&lt;br /&gt;
        return document.body.parentElement.clientHeight&lt;br /&gt;
    } else if (document.body &amp;amp;&amp;amp; document.body.clientHeight) {&lt;br /&gt;
        return document.body.clientHeight;&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
// Global holds reference to selected element&lt;br /&gt;
var selectedObj;&lt;br /&gt;
// Globals hold location of click relative to element&lt;br /&gt;
var offsetX, offsetY;&lt;br /&gt;
// Set global reference to element being engaged and dragged&lt;br /&gt;
function setSelectedElem(evt) {&lt;br /&gt;
    var target = (evt.target) ? evt.target : evt.srcElement;&lt;br /&gt;
    var divID = (target.name &amp;amp;&amp;amp; target.src) ? target.name + &amp;quot;Wrap&amp;quot; : &amp;quot;&amp;quot;;&lt;br /&gt;
    if (divID) {&lt;br /&gt;
        if (document.layers) {&lt;br /&gt;
            selectedObj = document.layers[divID];&lt;br /&gt;
        } else if (document.all) {&lt;br /&gt;
            selectedObj = document.all(divID);&lt;br /&gt;
        } else if (document.getElementById) {&lt;br /&gt;
            selectedObj = document.getElementById(divID);&lt;br /&gt;
        }&lt;br /&gt;
        setZIndex(selectedObj, 100);&lt;br /&gt;
        return;&lt;br /&gt;
    }&lt;br /&gt;
    selectedObj = null;&lt;br /&gt;
    return;&lt;br /&gt;
}&lt;br /&gt;
// Turn selected element on&lt;br /&gt;
function engage(evt) {&lt;br /&gt;
    evt = (evt) ? evt : event;&lt;br /&gt;
    setSelectedElem(evt);&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        if (document.body &amp;amp;&amp;amp; document.body.setCapture) {&lt;br /&gt;
            // engage event capture in IE/Win&lt;br /&gt;
            document.body.setCapture();&lt;br /&gt;
        }&lt;br /&gt;
        if (evt.pageX) {&lt;br /&gt;
            offsetX = evt.pageX - ((selectedObj.offsetLeft) ? &lt;br /&gt;
                      selectedObj.offsetLeft : selectedObj.left);&lt;br /&gt;
            offsetY = evt.pageY - ((selectedObj.offsetTop) ? &lt;br /&gt;
                      selectedObj.offsetTop : selectedObj.top);&lt;br /&gt;
        } else if (typeof evt.offsetX != &amp;quot;undefined&amp;quot;) {&lt;br /&gt;
            offsetX = evt.offsetX - ((evt.offsetX &amp;lt; -2) ? &lt;br /&gt;
                      0 : document.body.scrollLeft);&lt;br /&gt;
            offsetX -= (document.body.parentElement &amp;amp;&amp;amp; &lt;br /&gt;
                     document.body.parentElement.scrollLeft) ? &lt;br /&gt;
                     document.body.parentElement.scrollLeft : 0&lt;br /&gt;
            offsetY = evt.offsetY - ((evt.offsetY &amp;lt; -2) ? &lt;br /&gt;
                      0 : document.body.scrollTop);&lt;br /&gt;
            offsetY -= (document.body.parentElement &amp;amp;&amp;amp; &lt;br /&gt;
                     document.body.parentElement.scrollTop) ? &lt;br /&gt;
                     document.body.parentElement.scrollTop : 0&lt;br /&gt;
        } else if (typeof evt.clientX != &amp;quot;undefined&amp;quot;) {&lt;br /&gt;
            offsetX = evt.clientX - ((selectedObj.offsetLeft) ? &lt;br /&gt;
                      selectedObj.offsetLeft : 0);&lt;br /&gt;
            offsetY = evt.clientY - ((selectedObj.offsetTop) ? &lt;br /&gt;
                      selectedObj.offsetTop : 0);&lt;br /&gt;
        }&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Drag an element&lt;br /&gt;
function dragIt(evt) {&lt;br /&gt;
    evt = (evt) ? evt : event;&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        if (evt.pageX) {&lt;br /&gt;
            shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY));&lt;br /&gt;
        } else if (evt.clientX || evt.clientY) {&lt;br /&gt;
            shiftTo(selectedObj, (evt.clientX - offsetX), (evt.clientY - offsetY));&lt;br /&gt;
        }&lt;br /&gt;
        evt.cancelBubble = true;&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Turn selected element off&lt;br /&gt;
function release(evt) {&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        setZIndex(selectedObj, 0);&lt;br /&gt;
        if (document.body &amp;amp;&amp;amp; document.body.releaseCapture) {&lt;br /&gt;
            // stop event capture in IE/Win&lt;br /&gt;
            document.body.releaseCapture();&lt;br /&gt;
        }&lt;br /&gt;
        selectedObj = null;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Assign event handlers used by both Navigator and IE&lt;br /&gt;
function initDrag() {&lt;br /&gt;
    if (document.layers) {&lt;br /&gt;
        // turn on event capture for these events in NN4 event model&lt;br /&gt;
        document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP);&lt;br /&gt;
        return;&lt;br /&gt;
    } else if (document.body &amp;amp; document.body.addEventListener) {&lt;br /&gt;
        // turn on event capture for these events in W3C DOM event model&lt;br /&gt;
      document.addEventListener(&amp;quot;mousedown&amp;quot;, engage, true);&lt;br /&gt;
      document.addEventListener(&amp;quot;mousemove&amp;quot;, dragIt, true);&lt;br /&gt;
      document.addEventListener(&amp;quot;mouseup&amp;quot;, release, true);&lt;br /&gt;
      return;&lt;br /&gt;
    }&lt;br /&gt;
    document.onmousedown = engage;&lt;br /&gt;
     document.onmousemove = dragIt;&lt;br /&gt;
     document.onmouseup = release;&lt;br /&gt;
    return;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body style=&amp;quot;height:400px&amp;quot; onload=&amp;quot;initDHTMLAPI(); initDrag()&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Dragging Images&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;hr /&amp;gt;&lt;br /&gt;
&amp;lt;img id=&amp;quot;imgZ&amp;quot; name=&amp;quot;imgZ&amp;quot; src=&amp;quot;http://www.wbex.ru/style/logo.png&amp;quot; &lt;br /&gt;
width=&amp;quot;230&amp;quot; height=&amp;quot;102&amp;quot; border=&amp;quot;0&amp;quot; alt=&amp;quot;Non-draggable widget&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;imgAWrap&amp;quot; class=&amp;quot;draggable&amp;quot;&amp;gt;&amp;lt;img id=&amp;quot;imgA&amp;quot; name=&amp;quot;imgA&amp;quot; src=&amp;quot;http://www.wbex.ru/style/logo.png&amp;quot; &lt;br /&gt;
width=&amp;quot;230&amp;quot; height=&amp;quot;102&amp;quot; border=&amp;quot;0&amp;quot; alt=&amp;quot;Primary draggable widget&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;imgBWrap&amp;quot; class=&amp;quot;draggable&amp;quot;&amp;gt;&amp;lt;img id=&amp;quot;imgB&amp;quot; name=&amp;quot;imgB&amp;quot; src=&amp;quot;http://www.wbex.ru/style/logoRed.png&amp;quot; &lt;br /&gt;
width=&amp;quot;281&amp;quot; height=&amp;quot;100&amp;quot; border=&amp;quot;0&amp;quot; alt=&amp;quot;Secondary draggable widget&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;!-- &lt;br /&gt;
var zone = {left:20, top:20, right:400, bottom:400};&lt;br /&gt;
function dragIt(evt) {&lt;br /&gt;
    evt = (evt) ? evt : event;&lt;br /&gt;
    var x, y, width, height;&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        if (evt.pageX) {&lt;br /&gt;
            x = evt.pageX - offsetX;&lt;br /&gt;
            y = evt.pageY - offsetY;&lt;br /&gt;
        } else if (evt.clientX || evt.clientY) {&lt;br /&gt;
            x = evt.clientX - offsetX;&lt;br /&gt;
            y = evt.clientY - offsetY;&lt;br /&gt;
        }&lt;br /&gt;
        width = getObjectWidth(selectedObj);&lt;br /&gt;
        height = getObjectHeight(selectedObj);&lt;br /&gt;
        x = (x &amp;lt; zone.left) ? zone.left : &lt;br /&gt;
           ((x + width &amp;gt; zone.right) ? zone.right - width : x);&lt;br /&gt;
        y = (y &amp;lt; zone.top) ? zone.top : &lt;br /&gt;
           ((y + height &amp;gt; zone.bottom) ? zone.bottom - height : y);&lt;br /&gt;
        shiftTo(selectedObj, x, y);&lt;br /&gt;
        evt.cancelBubble = true;&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Drag two Images==&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;
 &amp;lt;!-- ***********************************************************&lt;br /&gt;
Example 6-2&lt;br /&gt;
&amp;quot;Dynamic HTML:The Definitive Reference&amp;quot;&lt;br /&gt;
2nd Edition&lt;br /&gt;
by Danny Goodman&lt;br /&gt;
Published by O&amp;quot;Reilly &amp;amp; Associates  ISBN 0-596-00316-1&lt;br /&gt;
http://www.oreilly.ru&lt;br /&gt;
Copyright 2002 Danny Goodman.  All Rights Reserved.&lt;br /&gt;
************************************************************ --&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
&amp;lt;head&amp;gt; &lt;br /&gt;
&amp;lt;title&amp;gt;Drag Image&amp;lt;/title&amp;gt; &lt;br /&gt;
&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;
  body {font-family:Ariel, sans-serif; text-align:right}&lt;br /&gt;
  #imgAWrap {position:absolute; left:50px; top:100px; width:120px; height:90px; &lt;br /&gt;
             border:solid black 1px; z-index:0}&lt;br /&gt;
  #imgBWrap {position:absolute; left:110px; top:145px; width:120px; height:90px; &lt;br /&gt;
             border:solid black 1px; z-index:0}&lt;br /&gt;
&amp;lt;/style&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/* ***********************************************************&lt;br /&gt;
Example 4-3 (DHTMLapi.js)&lt;br /&gt;
&amp;quot;Dynamic HTML:The Definitive Reference&amp;quot;&lt;br /&gt;
2nd Edition&lt;br /&gt;
by Danny Goodman&lt;br /&gt;
Published by O&amp;quot;Reilly &amp;amp; Associates  ISBN 1-56592-494-0&lt;br /&gt;
http://www.oreilly.ru&lt;br /&gt;
Copyright 2002 Danny Goodman.  All Rights Reserved.&lt;br /&gt;
************************************************************ */&lt;br /&gt;
// DHTMLapi.js custom API for cross-platform&lt;br /&gt;
// object positioning by Danny Goodman (http://www.dannyg.ru).&lt;br /&gt;
// Release 2.0. Supports NN4, IE, and W3C DOMs.&lt;br /&gt;
// Global variables&lt;br /&gt;
var isCSS, isW3C, isIE4, isNN4;&lt;br /&gt;
// initialize upon load to let all browsers establish content objects&lt;br /&gt;
function initDHTMLAPI() {&lt;br /&gt;
    if (document.images) {&lt;br /&gt;
        isCSS = (document.body &amp;amp;&amp;amp; document.body.style) ? true : false;&lt;br /&gt;
        isW3C = (isCSS &amp;amp;&amp;amp; document.getElementById) ? true : false;&lt;br /&gt;
        isIE4 = (isCSS &amp;amp;&amp;amp; document.all) ? true : false;&lt;br /&gt;
        isNN4 = (document.layers) ? true : false;&lt;br /&gt;
        isIE6CSS = (document.rupatMode &amp;amp;&amp;amp; document.rupatMode.indexOf(&amp;quot;CSS1&amp;quot;) &amp;gt;= 0) ? true : false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// set event handler to initialize API&lt;br /&gt;
window.onload = initDHTMLAPI;&lt;br /&gt;
// Seek nested NN4 layer from string name&lt;br /&gt;
function seekLayer(doc, name) {&lt;br /&gt;
    var theObj;&lt;br /&gt;
    for (var i = 0; i &amp;lt; doc.layers.length; i++) {&lt;br /&gt;
        if (doc.layers[i].name == name) {&lt;br /&gt;
            theObj = doc.layers[i];&lt;br /&gt;
            break;&lt;br /&gt;
        }&lt;br /&gt;
        // dive into nested layers if necessary&lt;br /&gt;
        if (doc.layers[i].document.layers.length &amp;gt; 0) {&lt;br /&gt;
            theObj = seekLayer(document.layers[i].document, name);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Convert object name string or object reference&lt;br /&gt;
// into a valid element object reference&lt;br /&gt;
function getRawObject(obj) {&lt;br /&gt;
    var theObj;&lt;br /&gt;
    if (typeof obj == &amp;quot;string&amp;quot;) {&lt;br /&gt;
        if (isW3C) {&lt;br /&gt;
            theObj = document.getElementById(obj);&lt;br /&gt;
        } else if (isIE4) {&lt;br /&gt;
            theObj = document.all(obj);&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj = seekLayer(document, obj);&lt;br /&gt;
        }&lt;br /&gt;
    } else {&lt;br /&gt;
        // pass through object reference&lt;br /&gt;
        theObj = obj;&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Convert object name string or object reference&lt;br /&gt;
// into a valid style (or NN4 layer) reference&lt;br /&gt;
function getObject(obj) {&lt;br /&gt;
    var theObj = getRawObject(obj);&lt;br /&gt;
    if (theObj &amp;amp;&amp;amp; isCSS) {&lt;br /&gt;
        theObj = theObj.style;&lt;br /&gt;
    }&lt;br /&gt;
    return theObj;&lt;br /&gt;
}&lt;br /&gt;
// Position an object at a specific pixel coordinate&lt;br /&gt;
function shiftTo(obj, x, y) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isCSS) {&lt;br /&gt;
            // equalize incorrect numeric value type&lt;br /&gt;
            var units = (typeof theObj.left == &amp;quot;string&amp;quot;) ? &amp;quot;px&amp;quot; : 0 &lt;br /&gt;
            theObj.left = x + units;&lt;br /&gt;
            theObj.top = y + units;&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj.moveTo(x,y)&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Move an object by x and/or y pixels&lt;br /&gt;
function shiftBy(obj, deltaX, deltaY) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isCSS) {&lt;br /&gt;
            // equalize incorrect numeric value type&lt;br /&gt;
            var units = (typeof theObj.left == &amp;quot;string&amp;quot;) ? &amp;quot;px&amp;quot; : 0 &lt;br /&gt;
            theObj.left = getObjectLeft(obj) + deltaX + units;&lt;br /&gt;
            theObj.top = getObjectTop(obj) + deltaY + units;&lt;br /&gt;
        } else if (isNN4) {&lt;br /&gt;
            theObj.moveBy(deltaX, deltaY);&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the z-order of an object&lt;br /&gt;
function setZIndex(obj, zOrder) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.zIndex = zOrder;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the background color of an object&lt;br /&gt;
function setBGColor(obj, color) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        if (isNN4) {&lt;br /&gt;
            theObj.bgColor = color;&lt;br /&gt;
        } else if (isCSS) {&lt;br /&gt;
            theObj.backgroundColor = color;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the visibility of an object to visible&lt;br /&gt;
function show(obj) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.visibility = &amp;quot;visible&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set the visibility of an object to hidden&lt;br /&gt;
function hide(obj) {&lt;br /&gt;
    var theObj = getObject(obj);&lt;br /&gt;
    if (theObj) {&lt;br /&gt;
        theObj.visibility = &amp;quot;hidden&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the x coordinate of a positionable object&lt;br /&gt;
function getObjectLeft(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (document.defaultView) {&lt;br /&gt;
        var style = document.defaultView;&lt;br /&gt;
        var cssDecl = style.getComputedStyle(elem, &amp;quot;&amp;quot;);&lt;br /&gt;
        result = cssDecl.getPropertyValue(&amp;quot;left&amp;quot;);&lt;br /&gt;
    } else if (elem.currentStyle) {&lt;br /&gt;
        result = elem.currentStyle.left;&lt;br /&gt;
    } else if (elem.style) {&lt;br /&gt;
        result = elem.style.left;&lt;br /&gt;
    } else if (isNN4) {&lt;br /&gt;
        result = elem.left;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the y coordinate of a positionable object&lt;br /&gt;
function getObjectTop(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (document.defaultView) {&lt;br /&gt;
        var style = document.defaultView;&lt;br /&gt;
        var cssDecl = style.getComputedStyle(elem, &amp;quot;&amp;quot;);&lt;br /&gt;
        result = cssDecl.getPropertyValue(&amp;quot;top&amp;quot;);&lt;br /&gt;
    } else if (elem.currentStyle) {&lt;br /&gt;
        result = elem.currentStyle.top;&lt;br /&gt;
    } else if (elem.style) {&lt;br /&gt;
        result = elem.style.top;&lt;br /&gt;
    } else if (isNN4) {&lt;br /&gt;
        result = elem.top;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the rendered width of an element&lt;br /&gt;
function getObjectWidth(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (elem.offsetWidth) {&lt;br /&gt;
        result = elem.offsetWidth;&lt;br /&gt;
    } else if (elem.clip &amp;amp;&amp;amp; elem.clip.width) {&lt;br /&gt;
        result = elem.clip.width;&lt;br /&gt;
    } else if (elem.style &amp;amp;&amp;amp; elem.style.pixelWidth) {&lt;br /&gt;
        result = elem.style.pixelWidth;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
// Retrieve the rendered height of an element&lt;br /&gt;
function getObjectHeight(obj)  {&lt;br /&gt;
    var elem = getRawObject(obj);&lt;br /&gt;
    var result = 0;&lt;br /&gt;
    if (elem.offsetHeight) {&lt;br /&gt;
        result = elem.offsetHeight;&lt;br /&gt;
    } else if (elem.clip &amp;amp;&amp;amp; elem.clip.height) {&lt;br /&gt;
        result = elem.clip.height;&lt;br /&gt;
    } else if (elem.style &amp;amp;&amp;amp; elem.style.pixelHeight) {&lt;br /&gt;
        result = elem.style.pixelHeight;&lt;br /&gt;
    }&lt;br /&gt;
    return parseInt(result);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Return the available content width space in browser window&lt;br /&gt;
function getInsideWindowWidth() {&lt;br /&gt;
    if (window.innerWidth) {&lt;br /&gt;
        return window.innerWidth;&lt;br /&gt;
    } else if (isIE6CSS) {&lt;br /&gt;
        // measure the html element&amp;quot;s clientWidth&lt;br /&gt;
        return document.body.parentElement.clientWidth&lt;br /&gt;
    } else if (document.body &amp;amp;&amp;amp; document.body.clientWidth) {&lt;br /&gt;
        return document.body.clientWidth;&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
// Return the available content height space in browser window&lt;br /&gt;
function getInsideWindowHeight() {&lt;br /&gt;
    if (window.innerHeight) {&lt;br /&gt;
        return window.innerHeight;&lt;br /&gt;
    } else if (isIE6CSS) {&lt;br /&gt;
        // measure the html element&amp;quot;s clientHeight&lt;br /&gt;
        return document.body.parentElement.clientHeight&lt;br /&gt;
    } else if (document.body &amp;amp;&amp;amp; document.body.clientHeight) {&lt;br /&gt;
        return document.body.clientHeight;&lt;br /&gt;
    }&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script language=&amp;quot;JavaScript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
// Global holds reference to selected element&lt;br /&gt;
var selectedObj;&lt;br /&gt;
// Globals hold location of click relative to element&lt;br /&gt;
var offsetX, offsetY;&lt;br /&gt;
// Set global reference to element being engaged and dragged&lt;br /&gt;
function setSelectedElem(evt) {&lt;br /&gt;
    var target = (evt.target) ? evt.target : evt.srcElement;&lt;br /&gt;
    var divID = (target.name &amp;amp;&amp;amp; target.src) ? target.name + &amp;quot;Wrap&amp;quot; : &amp;quot;&amp;quot;;&lt;br /&gt;
    if (divID) {&lt;br /&gt;
        if (document.layers) {&lt;br /&gt;
            selectedObj = document.layers[divID];&lt;br /&gt;
        } else if (document.all) {&lt;br /&gt;
            selectedObj = document.all(divID);&lt;br /&gt;
        } else if (document.getElementById) {&lt;br /&gt;
            selectedObj = document.getElementById(divID);&lt;br /&gt;
        }&lt;br /&gt;
        setZIndex(selectedObj, 100);&lt;br /&gt;
        return;&lt;br /&gt;
    }&lt;br /&gt;
    selectedObj = null;&lt;br /&gt;
    return;&lt;br /&gt;
}&lt;br /&gt;
// Drag an element&lt;br /&gt;
function dragIt(evt) {&lt;br /&gt;
    evt = (evt) ? evt : event;&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        if (evt.pageX) {&lt;br /&gt;
            shiftTo(selectedObj, (evt.pageX - offsetX), (evt.pageY - offsetY));&lt;br /&gt;
        } else if (evt.clientX || evt.clientY) {&lt;br /&gt;
            shiftTo(selectedObj, (evt.clientX - offsetX), (evt.clientY - offsetY));&lt;br /&gt;
        }&lt;br /&gt;
        evt.cancelBubble = true;&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Turn selected element on&lt;br /&gt;
function engage(evt) {&lt;br /&gt;
    evt = (evt) ? evt : event;&lt;br /&gt;
    setSelectedElem(evt);&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        if (evt.pageX) {&lt;br /&gt;
            offsetX = evt.pageX - ((selectedObj.offsetLeft) ? &lt;br /&gt;
                      selectedObj.offsetLeft : selectedObj.left);&lt;br /&gt;
            offsetY = evt.pageY - ((selectedObj.offsetTop) ? &lt;br /&gt;
                      selectedObj.offsetTop : selectedObj.top);&lt;br /&gt;
        } else if (evt.offsetX || evt.offsetY) {&lt;br /&gt;
            offsetX = evt.offsetX - ((evt.offsetX &amp;lt; -2) ? &lt;br /&gt;
                      0 : document.body.scrollLeft);&lt;br /&gt;
            offsetY = evt.offsetY - ((evt.offsetY &amp;lt; -2) ? &lt;br /&gt;
                      0 : document.body.scrollTop);&lt;br /&gt;
        } else if (evt.clientX) {&lt;br /&gt;
            offsetX = evt.clientX - ((selectedObj.offsetLeft) ? &lt;br /&gt;
                      selectedObj.offsetLeft : 0);&lt;br /&gt;
            offsetY = evt.clientY - ((selectedObj.offsetTop) ? &lt;br /&gt;
                      selectedObj.offsetTop : 0);&lt;br /&gt;
        }&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Turn selected element off&lt;br /&gt;
function release(evt) {&lt;br /&gt;
    if (selectedObj) {&lt;br /&gt;
        setZIndex(selectedObj, 0);&lt;br /&gt;
        selectedObj = null;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
// Set event capture for Navigator 4&lt;br /&gt;
function setNSEventCapture() {&lt;br /&gt;
    document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP);&lt;br /&gt;
}&lt;br /&gt;
// Assign event handlers used by both Navigator and IE&lt;br /&gt;
function init() {&lt;br /&gt;
    if (document.layers) {&lt;br /&gt;
        setNSEventCapture();&lt;br /&gt;
    }&lt;br /&gt;
    document.onmousedown = engage;&lt;br /&gt;
    document.onmousemove = dragIt;&lt;br /&gt;
    document.onmouseup = release;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/head&amp;gt; &lt;br /&gt;
&amp;lt;body onload=&amp;quot;initDHTMLAPI(); init();&amp;quot;&amp;gt; &lt;br /&gt;
&amp;lt;h1&amp;gt;Element Dragging&amp;lt;/h1&amp;gt; &lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;imgAWrap&amp;quot; class=&amp;quot;draggable&amp;quot;&amp;gt;&amp;lt;img id=&amp;quot;imgA&amp;quot; name=&amp;quot;imgA&amp;quot; src=&amp;quot;http://www.wbex.ru/style/logo.png&amp;quot; width=&amp;quot;120&amp;quot; height=&amp;quot;90&amp;quot; border=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;imgBWrap&amp;quot; class=&amp;quot;draggable&amp;quot;&amp;gt;&amp;lt;img id=&amp;quot;imgB&amp;quot; name=&amp;quot;imgB&amp;quot; src=&amp;quot;http://www.wbex.ru/style/logoRed.png&amp;quot; width=&amp;quot;120&amp;quot; height=&amp;quot;90&amp;quot; border=&amp;quot;0&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>