Jump to content

ELNINO

Newbie
  • Posts

    17
  • Joined

  • Last visited

Everything posted by ELNINO

  1. В английском языке сокращения давно считаются литературной нормой, но в великом и могучем языке это считается почему то зазорно. Зря воздух сотрясаете. Язык будет развиваться/деградировать (нужное подчеркнуть) не зависимо от вас. Вспомните что при Петре были модны зарубежные словечки, но после Петра его за это стали хаять, однако вы сейчас употребляете эти слова и даже не задумываетесь... Кстати я думаю что через лет 50 такое слово как lol станет интернациональным фразеологизмом, а в книгах начнут употреблять смайлы.
  2. не правильно понял автора сообщение можно удалить.
  3. Помогите найти курсоры -webkit-zoom-in(out) в форматах .cur .ani. Заранее спасибо. PS поиск запарился уже штудировать ))
  4. s0rr0w подпись жжет
  5. Тогда наверное имеет смысл загружать сохраненную копию страницы на свой сайт, и там уже ставить якорь, принципе для пользователя разницы не будет, по всем ссылкам он попадет на оригинал, но хотелось бы конечно иметь волшебный способ ))
  6. А ну я то пробовал, на http://www.anywhere.com/index.htm, а там есть доктайп. В таком случае способ, к сожалению, совсем не юзабелен, потому что в 99% доктайп прописан на каждой странице.
  7. сторонние скрипты пользуешь?
  8. Не работает (( <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Якорь</title> </head> <script type="text/javascript"> function openAndScroll(strUrl, strWindowName, strWindowFeatures) { var newWnd = window.open(strUrl, strWindowName, strWindowFeatures); newWnd.scrollTo(0, 1500); return false; } </script> <body> <a href="#" onclick="return openAndScroll('http://www.anywhere.com/index.htm','','');">open and scroll</a> </body> </html>
  9. Что то не очень понял, можно примерчик ?))
  10. Не обязательно якорь, может можно как то привязаться с помощью скажем какого нить скрипта к отдельной строке кода) я конечно фантазер, но а вдруг что то есть такое )
  11. Вот пришла в голову идея сделать ссылку на часть страницы находящегося на другом сайте. Можно это вообще как либо осуществить ? Заранее спасибо.
  12. ELNINO

    abbr, acronym

    Спасибо Dimitry Wolotko. Я догадывался, что так и есть, но надеялся на лучшее)) Остановился я на вот этом tooltip'e http://seleckis.lv/scripting/tooltip-javascript
  13. ELNINO

    abbr, acronym

    Подскажите пожалуйста как сделать чтобы при наведении на текст заключенный в тэгах abbr и acronym всплывающее окно не пропадало пока не отведешь мышь, сейчас оно пропадает примерно через 10 сек.
  14. Вот почти один в один кстати lightbox => http://forum.htmlbook.ru/index.php?s=&...st&p=101521
  15. Большое спасибо Victor Ananiev! Вот отсюда берется код http://www.huddletogether.com/projects/lightbox/ Вот что получилось: <style type="text/css"> #lightbox{ background-color:#eee; padding: 10px; border-bottom: 2px solid #666; border-right: 2px solid #666; } #lightboxDetails{ font-size: 0.8em; padding-top: 0.4em; } #lightboxCaption{ float: left; } #keyboardMsg{ float: right; } #closeButton{ top: 5px; right: 5px; } #lightbox img{ border: none; clear: both;} #overlay img{ border: none; } #overlay{ background-image: url(overlay.png); } * html #overlay{ background-color: #333; back\ground-color: transparent; background-image: url(blank.gif); filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="overlay.png", sizingMethod="scale"); } </style> <script type="text/javascript"> /* Lightbox JS: Fullsize Image Overlays by Lokesh Dhakar - http://www.huddletogether.com For more information on this script, visit: http://huddletogether.com/projects/lightbox/ Licensed under the Creative Commons Attribution 2.5 License - http://creativecommons.org/licenses/by/2.5/ (basically, do anything you want, just leave my name and link) Table of Contents —————-- Configuration Functions - getPageScroll() - getPageSize() - pause() - getKey() - listenKey() - showLightbox() - hideLightbox() - initLightbox() - addLoadEvent() Function Calls - addLoadEvent(initLightbox) */ // // Configuration // // If you would like to use a custom loading image or close button reference them in the next two lines. var loadingImage = 'loading.gif'; var closeButton = 'close.gif'; // // getPageScroll() // Returns array with x,y page scroll values. // Core code from - quirksmode.org // function getPageScroll(){ var yScroll; if (self.pageYOffset) { yScroll = self.pageYOffset; } else if (document.documentElement && document.documentElement.scrollTop){ // Explorer 6 Strict yScroll = document.documentElement.scrollTop; } else if (document.body) {// all other Explorers yScroll = document.body.scrollTop; } arrayPageScroll = new Array('',yScroll) return arrayPageScroll; } // // getPageSize() // Returns array with page width, height and window width, height // Core code from - quirksmode.org // Edit for Firefox by pHaez // function getPageSize(){ var xScroll, yScroll; if (window.innerHeight && window.scrollMaxY) { xScroll = document.body.scrollWidth; yScroll = window.innerHeight + window.scrollMaxY; } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac xScroll = document.body.scrollWidth; yScroll = document.body.scrollHeight; } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari xScroll = document.body.offsetWidth; yScroll = document.body.offsetHeight; } var windowWidth, windowHeight; if (self.innerHeight) { // all except Explorer windowWidth = self.innerWidth; windowHeight = self.innerHeight; } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode windowWidth = document.documentElement.clientWidth; windowHeight = document.documentElement.clientHeight; } else if (document.body) { // other Explorers windowWidth = document.body.clientWidth; windowHeight = document.body.clientHeight; } // for small pages with total height less then height of the viewport if(yScroll < windowHeight){ pageHeight = windowHeight; } else { pageHeight = yScroll; } // for small pages with total width less then width of the viewport if(xScroll < windowWidth){ pageWidth = windowWidth; } else { pageWidth = xScroll; } arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) return arrayPageSize; } // // pause(numberMillis) // Pauses code execution for specified time. Uses busy code, not good. // Code from http://www.faqts.com/knowledge_base/view.phtml/aid/1602 // function pause(numberMillis) { var now = new Date(); var exitTime = now.getTime() + numberMillis; while (true) { now = new Date(); if (now.getTime() > exitTime) return; } } // // getKey(key) // Gets keycode. If 'x' is pressed then it hides the lightbox. // function getKey(e){ if (e == null) { // ie keycode = event.keyCode; } else { // mozilla keycode = e.which; } key = String.fromCharCode(keycode).toLowerCase(); if(key == 'x'){ hideLightbox(); } } // // listenKey() // function listenKey () { document.onkeypress = getKey; } // // showLightbox() // Preloads images. Pleaces new image in lightbox then centers and displays. // function showLightbox(objLink) { // prep objects var objOverlay = document.getElementById('overlay'); var objLightbox = document.getElementById('lightbox'); var objCaption = document.getElementById('lightboxCaption'); var objImage = document.getElementById('lightboxImage'); var objLoadingImage = document.getElementById('loadingImage'); var objLightboxDetails = document.getElementById('lightboxDetails'); var arrayPageSize = getPageSize(); var arrayPageScroll = getPageScroll(); // center loadingImage if it exists if (objLoadingImage) { objLoadingImage.style.top = (arrayPageScroll[1] + ((arrayPageSize[3] - 35 - objLoadingImage.height) / 2) + 'px'); objLoadingImage.style.left = (((arrayPageSize[0] - 20 - objLoadingImage.width) / 2) + 'px'); objLoadingImage.style.display = 'block'; } // set height of Overlay to take up whole page and show objOverlay.style.height = (arrayPageSize[1] + 'px'); objOverlay.style.display = 'block'; // preload image imgPreload = new Image(); imgPreload.onload=function(){ objImage.src = objLink.href; // center lightbox and make sure that the top and left values are not negative // and the image placed outside the viewport var lightboxTop = arrayPageScroll[1] + ((arrayPageSize[3] - 35 - imgPreload.height) / 2); var lightboxLeft = ((arrayPageSize[0] - 20 - imgPreload.width) / 2); objLightbox.style.top = (lightboxTop < 0) ? "0px" : lightboxTop + "px"; objLightbox.style.left = (lightboxLeft < 0) ? "0px" : lightboxLeft + "px"; objLightboxDetails.style.width = imgPreload.width + 'px'; if(objLink.getAttribute('title')){ objCaption.style.display = 'block'; //objCaption.style.width = imgPreload.width + 'px'; objCaption.innerHTML = objLink.getAttribute('title'); } else { objCaption.style.display = 'none'; } // A small pause between the image loading and displaying is required with IE, // this prevents the previous image displaying for a short burst causing flicker. if (navigator.appVersion.indexOf("MSIE")!=-1){ pause(250); } if (objLoadingImage) { objLoadingImage.style.display = 'none'; } // Hide select boxes as they will 'peek' through the image in IE selects = document.getElementsByTagName("select"); for (i = 0; i != selects.length; i++) { selects[i].style.visibility = "hidden"; } objLightbox.style.display = 'block'; // After image is loaded, update the overlay height as the new image might have // increased the overall page height. arrayPageSize = getPageSize(); objOverlay.style.height = (arrayPageSize[1] + 'px'); // Check for 'x' keypress listenKey(); return false; } imgPreload.src = objLink.href; } // // hideLightbox() // function hideLightbox() { // get objects objOverlay = document.getElementById('overlay'); objLightbox = document.getElementById('lightbox'); // hide lightbox and overlay objOverlay.style.display = 'none'; objLightbox.style.display = 'none'; // make select boxes visible selects = document.getElementsByTagName("select"); for (i = 0; i != selects.length; i++) { selects[i].style.visibility = "visible"; } // disable keypress listener document.onkeypress = ''; } // // initLightbox() // Function runs on window load, going through link tags looking for rel="lightbox". // These links receive onclick events that enable the lightbox display for their targets. // The function also inserts html markup at the top of the page which will be used as a // container for the overlay pattern and the inline image. // function initLightbox() { if (!document.getElementsByTagName){ return; } var anchors = document.getElementsByTagName("a"); // loop through all anchor tags for (var i=0; i<anchors.length; i++){ var anchor = anchors[i]; if (anchor.getAttribute("href") && (anchor.getAttribute("rel") == "lightbox")){ anchor.onclick = function () {showLightbox(this); return false;} } } // the rest of this code inserts html at the top of the page that looks like this: // // <div id="overlay"> // <a href="#" onclick="hideLightbox(); return false;"><img id="loadingImage" /></a> // </div> // <div id="lightbox"> // <a href="#" onclick="hideLightbox(); return false;" title="Click anywhere to close image"> // <img id="closeButton" /> // <img id="lightboxImage" /> // </a> // <div id="lightboxDetails"> // <div id="lightboxCaption"></div> // <div id="keyboardMsg"></div> // </div> // </div> var objBody = document.getElementsByTagName("body").item(0); // create overlay div and hardcode some functional styles (aesthetic styles are in CSS file) var objOverlay = document.createElement("div"); objOverlay.setAttribute('id','overlay'); objOverlay.onclick = function () {hideLightbox(); return false;} objOverlay.style.display = 'none'; objOverlay.style.position = 'absolute'; objOverlay.style.top = '0'; objOverlay.style.left = '0'; objOverlay.style.zIndex = '90'; objOverlay.style.width = '100%'; objBody.insertBefore(objOverlay, objBody.firstChild); var arrayPageSize = getPageSize(); var arrayPageScroll = getPageScroll(); // preload and create loader image var imgPreloader = new Image(); // if loader image found, create link to hide lightbox and create loadingimage imgPreloader.onload=function(){ var objLoadingImageLink = document.createElement("a"); objLoadingImageLink.setAttribute('href','#'); objLoadingImageLink.onclick = function () {hideLightbox(); return false;} objOverlay.appendChild(objLoadingImageLink); var objLoadingImage = document.createElement("img"); objLoadingImage.src = loadingImage; objLoadingImage.setAttribute('id','loadingImage'); objLoadingImage.style.position = 'absolute'; objLoadingImage.style.zIndex = '150'; objLoadingImageLink.appendChild(objLoadingImage); imgPreloader.onload=function(){}; // clear onLoad, as IE will flip out w/animated gifs return false; } imgPreloader.src = loadingImage; // create lightbox div, same note about styles as above var objLightbox = document.createElement("div"); objLightbox.setAttribute('id','lightbox'); objLightbox.style.display = 'none'; objLightbox.style.position = 'absolute'; objLightbox.style.zIndex = '100'; objBody.insertBefore(objLightbox, objOverlay.nextSibling); // create link var objLink = document.createElement("a"); objLink.setAttribute('href','#'); objLink.setAttribute('title','Click to close'); objLink.onclick = function () {hideLightbox(); return false;} objLightbox.appendChild(objLink); // preload and create close button image var imgPreloadCloseButton = new Image(); // if close button image found, imgPreloadCloseButton.onload=function(){ var objCloseButton = document.createElement("img"); objCloseButton.src = closeButton; objCloseButton.setAttribute('id','closeButton'); objCloseButton.style.position = 'absolute'; objCloseButton.style.zIndex = '200'; objLink.appendChild(objCloseButton); return false; } imgPreloadCloseButton.src = closeButton; // create image var objImage = document.createElement("img"); objImage.setAttribute('id','lightboxImage'); objLink.appendChild(objImage); // create details div, a container for the caption and keyboard message var objLightboxDetails = document.createElement("div"); objLightboxDetails.setAttribute('id','lightboxDetails'); objLightbox.appendChild(objLightboxDetails); // create caption var objCaption = document.createElement("div"); objCaption.setAttribute('id','lightboxCaption'); objCaption.style.display = 'none'; objLightboxDetails.appendChild(objCaption); // create keyboard message var objKeyboardMsg = document.createElement("div"); objKeyboardMsg.setAttribute('id','keyboardMsg'); objKeyboardMsg.innerHTML = 'press <a href="#" onclick="hideLightbox(); return false;"><kbd>x</kbd></a> to close'; objLightboxDetails.appendChild(objKeyboardMsg); } // // addLoadEvent() // Adds event to window.onload without overwriting currently assigned onload functions. // Function found at Simon Willison's weblog - http://simon.incutio.com/ // function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function'){ window.onload = func; } else { window.onload = function(){ oldonload(); func(); } } } addLoadEvent(initLightbox); // run initLightbox onLoad </script> <a href="http://img196.imageshack.us/img196/415/32699664.jpg" rel="lightbox" title="кронштейн"><img src="http://img196.imageshack.us/img196/415/32699664.th.jpg" hspace="5" alt="" width="150" height="130"></a>
  16. Я пытаюсь интегрировать галерею с сайта http://highslide.com/#installation. выдаются инструкции <script type="text/javascript" src="/highslide/highslide.js"></script> <link rel="stylesheet" type="text/css" href="/highslide/highslide.css" /> Собственно мне нужно куда то закачать эти файлы, проблема в том что в базу своего сайта я не могу залить ибо пользуюсь услугами сайта за 5 мин )) Посоветуйте пожалуйста куда мне это все залить. И еще вопрос я скачиваю зип файл где содержится помимо этих файлов еще и картинки к ним, как быть с доступом к ним? Я пробовал тупо копировать содержание в СSS и script но работает неправильно (( Ну или посоветуйте что нибудь, например может есть у кого код попроще и чтоб побыстрее работал, нужно просто чтобы картинка открывалась не в поп-ап и не в новом окне, а как на highslide.com и аналогичных. В Яндекс и Гугл просьба не отсылать, я только что оттуда Заранее спасибо.
  17. Немного подчистил код, сразу говорю я нуб поэтому просто убрал те блоки которые никак не влияют, если есть у кого желание можете подредактировать оставшиеся блоки )) <style type="text/css" /> /* message box*/ .popup_transparent_bg { top:0; left:0; width: 100%; height: 100%; position: absolute; background-color: #FFF; filter:alpha(opacity=0); opacity:0.0; z-index: 1000; } .box_frame{ left: 50%; position: absolute; } .popup_box_bg { } .popup_box_container { position: absolute; left: 50%; z-index: 1001; padding: 10px; } .message_box { background-color: none; /*filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='./../images/transpx2.png',sizingMethod='scale'); */ background: url('./../images/transpx2.png'); } .box_loader { height: 50px; background: url('/../images/progress7.gif') center no-repeat; } .box_title_wrap { background-color: #4B769F; border: 1px solid #45688E; padding: 0px; color: #fff; font-size: 13px; font-weight: bold; } .box_body { background-color: #fff; border: 1px solid #aaa; border-width: 0px 1px 0px 1px; border-bottom: 1px solid #ccc; padding:16px 14px; line-height: 14px; } .box_controls { text-align: center; padding:5px; height: 30px; background-color:#f2f2f2; border: 1px solid #aaa; border-top: 0px; } .box_controls .button_wrap { margin: 2px 5px; cursor: pointer; float: right; width: auto; height: auto; } .box_controls .button_wrap div { padding: 4px 14px; } .box_controls .button_yes { border: 1px solid #2B587A; } .box_controls .button_yes div { border-top: 1px solid #6E97C4; background-color:#4B769F; color: #FFF; } .box_controls .button_yes div.button_hover { background-color: #678BAE; } .box_controls .button_no { border: 1px solid #ccc; } .box_controls .button_no div { border-top: 1px solid #fff; background-color:#eaeaea; color: #000; text-decoration: none; } .box_controls .button_no div.button_hover { background-color: #f5f5f5; } .box_title { border-top: 1px solid #6088B3; padding: 4px 10px 5px 10px; } .box_no_controls { background-color: #DAE2E8; border: 1px solid #ADBBCA; } .box_no_controls .box_title_wrap, .box_no_controls .box_layout .box_controls { display: none; } .box_no_controls .box_body { border: none; padding: 0; } </style> <script type="text/javascript"> var base_domain = base_domain || "/"; var browser = { opera: /opera/i.test(navigator.userAgent), msie: (!this.opera && /msie/i.test(navigator.userAgent)), msie6: (!this.opera && /msie 6/i.test(navigator.userAgent)), mozilla: /firefox/i.test(navigator.userAgent), chrome: /chrome/i.test(navigator.userAgent), safari: (!(/chrome/i.test(navigator.userAgent)) && /webkit|safari|khtml/i.test(navigator.userAgent)) } /** * DOM **/ function ge() { var ea; for (var i = 0; i < arguments.length; i++) { var e = arguments[i]; if (typeof e == 'string') e = document.getElementById(e); if (arguments.length == 1) return e; if (!ea) ea = new Array(); ea.push(e); } return ea; } function geByClass(searchClass, node, tag) { var classElements = new Array(); if ( node == null ) node = document; if ( tag == null ) tag = '*'; if (node.getElementsByClassName) { classElements = node.getElementsByClassName(searchClass); if (tag != '*') { for (i = 0; i < classElements.length; i++) { if (classElements.nodeName == tag) classElements.splice(i, 1); } } return classElements; } var els = node.getElementsByTagName(tag); var elsLen = els.length; var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)"); for (i = 0, j = 0; i < elsLen; i++) { if ( pattern.test(els[i].className) ) { classElements[j] = els[i]; j++; } } return classElements; } function show(elem) { if (arguments.length > 1) { for (var i = 0; i < arguments.length; i++) { show(arguments[i]); } return; } elem = ge(elem); if (!elem) return; var old = data(elem, "olddisplay"); elem.style.display = old || ""; if (getStyle(elem, 'display') == "none" ) { elem.style.display = data(elem, "olddisplay", "block"); } } function hide(elem){ if (arguments.length > 1) { for (var i = 0; i < arguments.length; i++) { hide(arguments[i]); } return; } elem = ge(elem); if (!elem) return; if (getStyle(elem, 'display') != "none") data(elem, "olddisplay", elem.style.display); elem.style.display = "none"; } function isVisible(elem) { elem = ge(elem); return getStyle(elem, 'display') != 'none' && getStyle(elem, 'visibility') != 'hidden'; } function toggle(elem) { if (isVisible(elem)) { hide(elem); } else { show(elem); } } window.shide = toggle; function getXY(obj) { if (!obj || obj == undefined) return; var left = 0, top = 0; if (obj.offsetParent) { do { left += obj.offsetLeft; top += obj.offsetTop; } while (obj = obj.offsetParent); } return [left,top]; } function getSize(elem, woBounds) { var s = [0, 0]; if (elem == document) { s = [Math.max( document.documentElement["clientWidth"], document.body["scrollWidth"], document.documentElement["scrollWidth"], document.body["offsetWidth"], document.documentElement["offsetWidth"] ), Math.max( document.documentElement["clientHeight"], document.body["scrollHeight"], document.documentElement["scrollHeight"], document.body["offsetHeight"], document.documentElement["offsetHeight"] )]; } else if (elem){ function getWH() { s = [elem.offsetWidth, elem.offsetHeight]; if (!woBounds) return; var padding = 0, border = 0; each(s, function(i, v) { var which = i ? ['Top', 'Bottom'] : ['Left', 'Right']; each(which, function(){ s[i] -= parseFloat(getStyle(elem, "padding" + this)) || 0; s[i] -= parseFloat(getStyle(elem, "border" + this + "Width")) || 0; }); }); s = [Math.round(s[0]), Math.round(s[1])]; } if (!isVisible(elem)) { var props = {position: "absolute", visibility: "hidden", display:"block"}; var old = {}; each(props, function(i, val){ old[i] = elem.style[i]; elem.style[i] = val; }); getWH(); each(props, function(i, val){ elem.style[i] = old[i]; }); } else getWH(); } return s; } /** * *************************************************** */ /** * Useful utils */ Function.prototype.bind = function(object) { var __method = this; return function() { return __method.apply(object, arguments); } }; function isFunction(obj) { return Object.prototype.toString.call(obj) === "[object Function]"; } function isArray(obj) { return Object.prototype.toString.call(obj) === "[object Array]"; } function now() { return +new Date; } function trim(text) { return (text || "").replace(/^\s+|\s+$/g, ""); } /** * Arrays, objects **/ function each(object, callback) { var name, i = 0, length = object.length; if ( length === undefined ) { for ( name in object ) if ( callback.call( object[ name ], name, object[ name ] ) === false ) break; } else for ( var value = object[0]; i < length && callback.call( value, i, value ) !== false; value = object[++i] ){} return object; }; function indexOf(arr, value, from) { from = (from == null) ? 0 : from; var m = arr.length; for(var i = from; i < m; i++) if (arr[i] == value) return i; return -1; } function clone(obj) { var newObj = {}; for (var i in obj) { newObj[i] = obj[i]; } return newObj; } // Extending object by another function extend() { // copy reference to target object var target = arguments[0] || {}, i = 1, length = arguments.length, deep = false, options; // Handle a deep copy situation if (typeof target === "boolean") { deep = target; target = arguments[1] || {}; // skip the boolean and the target i = 2; } // Handle case when target is a string or something (possible in deep copy) if (typeof target !== "object" && !isFunction(target)) target = {}; // return target object if only one argument is passed if (length == i) { return target; } for (; i < length; i++) // Only deal with non-null/undefined values if ((options = arguments[i]) != null) // Extend the base object for (var name in options) { var src = target[name], copy = options[name]; // Prevent never-ending loop if (target === copy) continue; // Recurse if we're merging object values if (deep && copy && typeof copy === "object" && !copy.nodeType) target[name] = extend(deep, // Never move original objects, clone them src || (copy.length != null ? [] : { }) , copy); // Don't bring in undefined values else if (copy !== undefined) target[name] = copy; } // Return the modified object return target; } /** * CSS classes **/ function hasClass(obj, name) { return obj && (new RegExp('(\\s|^)' + name + '(\\s|$)')).test(obj.className); } function addClass(obj, name) { if (obj && !hasClass(obj, name)) obj.className = (obj.className ? obj.className + ' ' : '') + name; } function removeClass(obj, name) { if (obj && hasClass(obj, name)) { obj.className = obj.className.replace((new RegExp('(\\s|^)' + name + '(\\s|$)')), ' '); } } // Get computed style function getStyle(elem, name) { if (name == "width" || name == "height") { return getSize(elem, true)[({'width':0, 'height':1})[name]] + 'px'; } var ret, defaultView = document.defaultView || window; if (defaultView.getComputedStyle) { name = name.replace( /([A-Z])/g, "-$1" ).toLowerCase(); var computedStyle = defaultView.getComputedStyle( elem, null ); if (computedStyle) ret = computedStyle.getPropertyValue(name); } else if (elem.currentStyle) { if (name == 'opacity' && browser.msie) { var filter = elem.currentStyle['filter']; return filter && filter.indexOf("opacity=") >= 0 ? (parseFloat(filter.match(/opacity=([^)]*)/)[1] ) / 100) + '' : '1'; } var camelCase = name.replace(/\-(\w)/g, function(all, letter){ return letter.toUpperCase(); }); ret = elem.currentStyle[name] || elem.currentStyle[camelCase]; // If we're not dealing with a regular pixel number // but a number that has a weird ending, we need to convert it to pixels if ( !/^\d+(px)?$/i.test( ret ) && /^\d/.test( ret ) ) { // Remember the original values var left = style.left, rsLeft = elem.runtimeStyle.left; // Put in the new values to get a computed value out elem.runtimeStyle.left = elem.currentStyle.left; style.left = ret || 0; ret = style.pixelLeft + "px"; // Revert the changed values style.left = left; elem.runtimeStyle.left = rsLeft; } } return ret; } function setStyle(elem, name, value){ elem = ge(elem); if (name == 'opacity'){ if (browser.msie) {elem.style.filter = "alpha(opacity=" + value*100 + ")"; elem.style.zoom = 1; }; elem.style.opacity = value; } else elem.style[name] = typeof(value) == 'number' && !(/z-?index|font-?weight|opacity|zoom|line-?height/i).test(name) ? value + 'px': value; } /** * Store data connected to element **/ var expand = "VK" + now(), vk_uuid = 0, vk_cache = {}; // Get or set element data function data(elem, name, data) { var id = elem[ expand ], undefined; if ( !id ) id = elem[ expand ] = ++vk_uuid; if (name && !vk_cache[id]) vk_cache[id] = {}; if (data !== undefined) vk_cache[id][name] = data; return name ? vk_cache[id][name] : id; } function removeData(elem, name) { var id = elem[expand]; if (name) { if (vk_cache[id]) { delete vk_cache[id][name]; name = ""; for (name in vk_cache[id]) break; if (!name) removeData(elem); } } else { try { delete elem[expand]; } catch(e){ // fix for IE if (elem.removeAttribute) elem.removeAttribute(expand); } delete vk_cache[id]; } } /** * Events **/ var KEY = window.KEY = { LEFT: 37, UP: 38, RIGHT: 39, DOWN: 40, DEL: 8, TAB: 9, RETURN: 13, ESC: 27, PAGEUP: 33, PAGEDOWN: 34, SPACE: 32 }; function addEvent(elem, types, handler) { if (!elem || elem.nodeType == 3 || elem.nodeType == 8 ) return; // For whatever reason, IE has trouble passing the window object // around, causing it to be cloned in the process if (elem.setInterval && elem != window) elem = window; var events = data(elem, "events") || data(elem, "events", []), handle = data(elem, "handle") || data(elem, "handle", function(){ _eventHandle.apply(arguments.callee.elem, arguments); }); // Add elem as a property of the handle function // This is to prevent a memory leak with non-native // event in IE. handle.elem = elem; each(types.split(/\s+/), function(index, type) { var handlers = events[type]; if (!handlers) { handlers = events[type] = new Array(); if (elem.addEventListener) elem.addEventListener(type, handle, false); else if (elem.attachEvent) elem.attachEvent('on' + type, handle); } handlers.push(handler); }); elem = null; } function removeEvent(elem, type, handler) { if (!elem) return; var events = data(elem, "events"); if (events) { if (typeof(type) == 'string' && isArray(events[type])) { if (isFunction(handler)) { for (var i = 0; i < events[type].length; i++) { if (events[type][i] == handler) { delete events[type][i]; break; } } } else { for (var i = 0; i < events[type].length; i++) { delete events[type][i]; } } } else { for (var i in events) { removeEvent(elem, i); } return; } for (var ret in events[type]) break; if (!ret && data(elem, "handle")) { if (elem.removeEventListener) elem.removeEventListener(type, data(elem, "handle"), false); else if (elem.detachEvent) elem.detachEvent("on" + type, data(elem, "handle")); } ret = null; delete events[type]; } } function cancelEvent(event) { var e = event.originalEvent || event; if (e.preventDefault) e.preventDefault(); if (e.stopPropagation) e.stopPropagation(); e.cancelBubble = true; e.returnValue = false; return false; } function _eventHandle(event) { event = event || window.event; var originalEvent = event; event = clone(originalEvent); event.originalEvent = originalEvent; if (!event.target) event.target = event.srcElement || document; // check if target is a textnode (safari) if ( event.target.nodeType == 3 ) event.target = event.target.parentNode; if (!event.relatedTarget && event.fromElement) event.relatedTarget = event.fromElement == event.target if ( event.pageX == null && event.clientX != null ) { var doc = document.documentElement, body = document.body; event.pageX = event.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc.clientLeft || 0); event.pageY = event.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc.clientTop || 0); } if ( !event.which && ((event.charCode || event.charCode === 0) ? event.charCode : event.keyCode) ) event.which = event.charCode || event.keyCode; // Add metaKey to non-Mac browsers (use ctrl for PC's and Meta for Macs) if ( !event.metaKey && event.ctrlKey ) event.metaKey = event.ctrlKey; // Add which for click: 1 == left; 2 == middle; 3 == right // Note: button is not normalized, so don't use it if ( !event.which && event.button ) event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); var handlers = data(this, "events"); if (!handlers || typeof(event.type) != 'string' || !handlers[event.type] || !handlers[event.type].length) { return; } try { for (var i = 0; i < handlers[event.type].length; i++) { if (event.type == 'mouseover' || event.type == 'mouseout') { var parent = event.relatedElement; // Traverse up the tree while ( parent && parent != this ) try { parent = parent.parentNode; } catch(e) { parent = this; } if (parent == this) { continue } } var ret = handlers[event.type][i].apply(this, arguments); if (ret === false) { cancelEvent(event); } } } catch (e) { var a = 0; } } // Prevent memory leaks in IE // And prevent errors on refresh with events like mouseover in other browsers // Window isn't included so as not to unbind existing unload events addEvent(window, "unload", function(){ for (var id in vk_cache) if (vk_cache[id].handle && vk_cache[id].handle.elem != window) removeEvent(vk_cache[id].handle.elem); }); // Dom ready event handler (function(){ var isRdy = false, rdyBnd = false, rdyList = []; window.onDomReady = function(fn) { bindRdy(); if (isRdy){ fn.call(document); } else { rdyList.push(function() { fn.call(document); }); } }; var rdy = function() { if (!isRdy) { isRdy = true; if (rdyList) { var l = rdyList; l.reverse(); while (fn = l.pop()) { fn.apply(document); } rdyList = null; } } }; var bindRdy = function() { if (rdyBnd) return; rdyBnd = true; if(document.addEventListener && !browser.opera) document.addEventListener("DOMContentLoaded", rdy, false); if (browser.msie && window == top) (function(){ if (isRdy) return; try {document.documentElement.doScroll("left"); } catch (e) { setTimeout(arguments.callee,0); return; } rdy(); })(); if (browser.opera) document.addEventListener("DOMContentLoaded", function(){ if (isRdy) return; rdy(); }, false); if (browser.safari) { (function(){ if(isRdy) return; if (document.readyState != "loaded" && document.readyState != "complete") { setTimeout(arguments.callee,0); return; } rdy(); })(); } addEvent(window, "load", rdy); } })(); var ajaxHistory = $ah = new (function(){ var _t = this; var curHash = ""; var curHashes = {}; var frame = null; var forceLoad = false; var order = null; _t.frameLoading = false; _t.enabled = false; _t.useCache = true; _t.onLoad = {}; _t.cache = {}; var setHash = function(hash){ hash = hash.replace("#",""); if(location.hash != "#" + hash){ location.hash = "#" + hash; if(browser.msie){ frame.src = 'blank.html?ahHash='+encodeURIComponent(hash); _t.frameLoading = true; } } return true; }; var getHash = function(){ if(!browser.msie)return location.hash.replace("#",""); try{ var hash = ge('ahFrame').contentWindow.document.location.search.match(/ahHash=(.*)$/); return decodeURIComponent((hash && hash[1]) || "").replace("#",""); }catch(e){return curHash;} }; var splitHash = function(hash){ if(!hash)return {}; hash = hash.split("/"); if(hash.length == 1){ if(!_t.onLoad['default'])return {}; if(_t.onLoad['default'].show)hash[0] = _t.onLoad['default'].show.from(hash[0]); return {'default':sortParams(hash[0])}; } var parsed = {}; for(var i=0;i<hash.length;i+=2){ var h = hash[i];var p = hash[i+1]; if(_t.onLoad[h].show){p = sortParams(_t.onLoad[h].show.from(p));} else{ p = sortParams(p); if(!p && _t.onLoad[h])p = sortParams(_t.onLoad[h].def); } parsed[h] = p; } return parsed; }; var joinHash = function(hash){ var joined = []; var def = true; for(var i in hash){ def = def && (i=='default'); var p = sortParams(hash[i]); if(_t.onLoad[i].show){ var p1 = _t.onLoad[i].show.to(splitParams(hash[i])); if(p1)p = p1; } joined.push(i + "/" + p); } if(def && joined[0])return joined[0].split("/")[1]; return joined.sort().join("/"); }; var splitParams = function(params){ if(!params)return {}; if(typeof(params)!='string')return params; if(!/&|=/.test(params))return params; var vals = params.split("&"); var p = {}; for(var i=0;i<vals.length;i++){ var v = vals[i].split("="); p[v[0]] = v[1]; } return p; }; var sortParams = function(params){ if(typeof(params)=='number')return params+''; if(typeof(params)!='string'){ params = ajx2q(params); } return params.split("&").sort().join("&"); }; _t.init = function(){ if(!this.enabled)return; for(var i in _t.onLoad){ var p = sortParams(_t.onLoad[i].def); curHashes[i] = p; }; var handler = function(){ var origHash = getHash(); if(origHash==curHash && !forceLoad)return; var state = splitHash(origHash); var hash = joinHash(state); if(hash!=curHash || forceLoad){ var ordered = order || _t.onLoad; for(var i in ordered){ if(order)i = ordered[i]; var l = _t.onLoad[i]; var p = state[i] || sortParams(l.def); if(p!=curHashes[i] || i == forceLoad){ forceLoad = false; if(l.before && !l.before(splitParams(p))){ curHashes[i] = p; continue; } if(!_t.cache[i])_t.cache[i] = {}; if(!_t.useCache || !_t.cache[i][p]){ _t.getData(l,i,p,hash); }else if(l.done){ l.done({}, _t.cache[i][p]); } curHashes[i] = p; } } curHash = hash; if(browser.msie){ if(location.hash != "#" + hash)location.hash = "#" + hash; } } }; if(browser.msie){ var initHash = encodeURIComponent(location.hash); document.body.innerHTML += "<iframe id='ahFrame' style='position:absolute;left:-1000px;width:0;height:0' src='/blank.html?ahHash="+initHash+"'></iframe>"; frame = ge('ahFrame'); frame.attachEvent('onreadystatechange', function() { if(frame.contentWindow.document.readyState == 'complete'){ _t.frameLoading = false; handler(); } }, false); frame.attachEvent('onload', function() { if(_t.frameLoading){ _t.frameLoading = false; handler(); } }, false); setInterval(function(){ if(!_t.frameLoading && (location.hash.replace("#", "") != getHash())){ setHash(location.hash); } }, 200); }else{ setInterval(handler,150); } }; _t.go = function(s, params){ if(params===undefined){params = s; s = 'default';} var state = splitHash(curHash); state[s] = sortParams(params); var hash = joinHash(state); setHash(hash); forceLoad = s; }; _t.getData = function(loadObj, id, params, hash){ var a = new Ajax( (function(l,i,p,t){return function(res,text){ if(l.done)l.done(res,text); if(t.useCache)_t.cache[i][p] = text; t.frameLoading = false; };})(loadObj,id,params, _t), (function(l,i,p,t){return function(res,text){ if(l.fail)l.fail(res,text); t.frameLoading = false; };})(loadObj,id,params, _t), true); a.post(loadObj.url, params); }; _t.prepare = function(id, params){ _t.enabled = true; if(params===undefined){params = id; id = 'default';} _t.onLoad[id] = params; }; _t.validateHash = function(hash){return joinHash(splitHash(hash));}; _t.clearCache = function(id){_t.cache[id] = {}}; })(); onDomReady(function(){ajaxHistory.init()}); /** * Message box **/ var _message_box_guid = 0, _message_boxes = [], _message_box_shown = false, _show_flash_timeout; function MessageBox(options) { var defaults = { type: "MESSAGE", // "MESSAGE" || "POPUP" hideOnClick: true, title: "Alert", width: "410px", height: "auto", hideFlash: true }; options = extend(defaults, options); var buttonsCount = 0, body = document.getElementsByTagName('body')[0], transparentBG, boxContainer, boxBG, boxContainer, boxLayout, boxTitle, boxBody, boxControls, buttonYes, buttonNo, guid = _message_box_guid++, isVisible = false; transparentBG = document.createElement('div'); transparentBG.className = 'popup_transparent_bg'; hide(transparentBG); //boxBG = document.createElement('div'); //boxBG.className = 'popup_box_bg'; //hide(boxBG); transparentBG.innerHTML = '<iframe class="box_frame"></iframe>'; boxContainer = document.createElement('div'); boxContainer.className = 'popup_box_container'; hide(boxContainer); boxContainer.innerHTML = '<div class="box_layout"><div class="box_title_wrap"><div class="box_title"></div></div><div class="box_body"></div><div class="box_controls"></div></div>'; boxFrame = geByClass('box_frame', transparentBG)[0]; boxLayout = geByClass('box_layout', boxContainer)[0]; boxTitle = geByClass('box_title', boxContainer)[0]; boxBody = geByClass('box_body', boxContainer)[0]; boxControls = geByClass('box_controls', boxContainer)[0]; transparentBG.style.height = getSize(document)[1] + 'px'; addEvent(document, 'keydown', function(e) { if (e.keyCode == 27) { hideBox(); } }); onDomReady(function() { body.appendChild(transparentBG); body.appendChild(boxContainer); refreshCoords(); refreshBox(); }); // Refresh box position function refreshCoords() { var height = window.innerHeight ? window.innerHeight : (document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.offsetHeight); containerSize = getSize(boxContainer); boxFrame.style.top = boxContainer.style.top = Math.max(document.documentElement.scrollTop, body.scrollTop) + (height - containerSize[1]) / 3 + 'px'; boxFrame.style.marginLeft = boxContainer.style.marginLeft = - containerSize[0] / 2 + 'px'; setStyle(boxFrame, 'width', containerSize[0]); setStyle(boxFrame, 'height', containerSize[1]); } // Add button function addButton(options) { buttonsCount++; if (typeof options != 'object') options = {}; options = extend({ label: 'Button' + buttonsCount, style: 'button_yes' }, options); var buttonWrap = document.createElement('div'); buttonWrap.className = "button_wrap " + options.style; buttonWrap.innerHTML = '<div class="box_button" id="button' + guid + '_' + buttonsCount + '">' + options.label + '</div>'; boxControls.appendChild(buttonWrap); addEvent(buttonWrap, 'mouseover', function() { addClass(this.firstChild, 'button_hover'); }); addEvent(buttonWrap, 'mouseout', function() { removeClass(this.firstChild, 'button_hover'); }); if (isFunction(options.onClick)) { addEvent(buttonWrap, 'click', options.onClick); } return buttonWrap; } // Remove buttons function removeButtons() { buttonsCount = 0; boxControls.innerHTML = ''; } // Refresh box properties function refreshBox() { // Set title boxTitle.innerHTML = options.title; // Set box dimensions boxContainer.style.width = typeof(options.width) == 'string' ? options.width : options.width + 'px'; boxContainer.style.height = typeof(options.height) == 'string' ? options.height : options.height + 'px'; // Switch box type removeClass(boxContainer, 'box_no_controls'); removeClass(boxContainer, 'message_box'); removeEvent(boxContainer, 'click'); if (options.hideOnClick && options.type == 'POPUP') { addEvent(boxContainer, 'click', function(){ hideBox(); }); } switch (options.type) { case 'POPUP': addClass(boxContainer, 'box_no_controls'); addEvent(transparentBG, 'click', function(){ hideBox(); }); break; case 'MESSAGE': addClass(boxContainer, 'message_box'); removeEvent(transparentBG, 'click'); break; } } // Show box function showBox() { if (isVisible) return; isVisible = true; each(_message_boxes, function(box_guid, box) { if (box_guid != guid) box.hide(); }); // Show blocking background show(transparentBG); // Show box // fadeIn(boxContainer, 200); show(boxContainer); // AntanubiS - Video wall posting fails with fadeIn =( refreshCoords(); // Hide all flash movies on the page if (options.hideFlash) { clearTimeout(_show_flash_timeout); each(body.getElementsByTagName('embed'), function(i, el) { el.style.visibility = 'hidden'; }); each(body.getElementsByTagName('object'), function(i, el) { el.style.visibility = 'hidden'; }); } if (options.onShow) { options.onShow(); } } // Hide box function hideBox(speed) { if (!isVisible) return; isVisible = false; var onHide = function () { hide(boxContainer); hide(transparentBG); // Show all flash movies on the page if (options.hideFlash) { if (_show_flash_timeout) clearTimeout(_show_flash_timeout); _show_flash_timeout = setTimeout(function() { each(body.getElementsByTagName('embed'), function(i, el) { el.style.visibility = 'visible'; }); each(body.getElementsByTagName('object'), function(i, el) { el.style.visibility = 'visible'; }); }, 50); } if (options.onHide) options.onHide(); } if (speed > 0) { fadeOut(boxContainer, speed, function(){ onHide(); }); } else { onHide(); } } var retBox = { guid: guid, // Show box show: function(speed) { showBox(speed); return this; }, // Hide box hide: function(speed) { hideBox(speed); return this; }, isVisible: function() { return this.isVisible; }, // Insert html content into the box content: function(html) { boxBody.innerHTML = html; refreshCoords(); return this; }, // Load html content from URL loadContent: function(url, params) { var ajax = new Ajax(function(ajaxObj, responseText) { boxBody.innerHTML = responseText; refreshCoords(); if (options.onLoad) options.onLoad(responseText); }, function(ajaxObj, responseText) { boxBody.innerHTML = 'Request error occured.'; if (options.onLoadError) options.onLoadError(responseText); }); // Show loader boxBody.innerHTML = '<div class="box_loader"></div>'; // Load remote html using get request if (typeof params != 'object') params = {}; ajax.post(url, params); return this; }, // Add button addButton: function(options) { addButton(options); return this; }, // Remove buttons removeButtons: function(options) { removeButtons(); return this; }, // Update box options setOptions: function(newOptions) { options = extend(options, newOptions); refreshBox(); return this; } }; _message_boxes[guid] = retBox; return retBox; }; </script> <script type="text/javascript"> var photoBox; function showPhoto(url, photo_id) { pic = new Image(); pic.src = url; if (!pic.width) { var coords = durovGetXY(ge('photo'+photo_id)); ge('imageProgress').style.height = ge('photo'+photo_id).offsetHeight+"px"; ge('imageProgress').style.left = coords[0]+"px"; ge('imageProgress').style.top = coords[1]+"px"; show('imageProgress'); setTimeout("showPhoto('"+url+"')", 1500); return false; } if (!photoBox) photoBox = new MessageBox({type: 'POPUP', width: 'auto'}); photoBox.content('<img src="' + url + '" />').show(); hide('imageProgress'); return false; } </script> <div class="photos"><a href="#" id="photo2093433" onclick="showPhoto('http://img196.imageshack.us/img196/415/32699664.jpg', 2093433); return false;" class="imageLink"><img src="http://img196.imageshack.us/img196/415/32699664.th.jpg"></a></div>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy