Поиск:
  • Страница 1 из 1
  • 1
Модератор форума: Senator  
Скрипт смены фона сайта
Дата: Среда, 08.06.2011, 14:30 | Сообщение # 1
Offline
  • Проверенный

  • _PS_AE_
  • 320 Сообщения


[Table]Итак начнём с конструктора и создания нового блока. [/Table]

[TableYellow] После создания в конструкторе блока, помещаем в него такой HTML код [/TableYellow]

Code
<center>[<small><a href="javascript://" onclick="deletebg()">Удалить свой фон</a></small>] [<small>Растянуть фон? <input id="str" type="checkbox"></input></small>]</center>   
   <span id="background"></span>   
   Или используйте уже имеющееся:<br>   
   <select id="bgs">   
   <option selected disabled>Варианты фона</option>   
   <option disabled>Вернуть свою ссылку на фон</option>   
   <option value="Ссылка на любой фон 1">Фон 1</option>   
   <option value="Ссылка на любой фон 2">Фон 2</option>   
   ...   
   <option value="Ссылка на любой фон n">Фон n</option>   
   </select>   
   <script type="text/javascript">   
   var dmn="ваш домен";   
   $(document).ready(function() {   
   $('#bgs').change(function(){   
   $('#bg').val($("select#bgs").val());   
   });   
   $('#str').change(function(){   
   if($("#str").is(':checked')){   
   setCookie("stretched", null, { expires: -1, path:"/", domain:dmn} );   
   $('body').removeClass('bg').addClass('bg_temp');   
   setCookie("stretched", "yes", { expires: 999999999999999, path:"/", domain:dmn} );   
   }else if($("#str").is(':not(:checked)')){   
   setCookie("stretched", null, { expires: -1, path:"/", domain:dmn} );   
   $('body').removeClass('bg_temp').addClass('bg');   
   setCookie("stretched", "no", { expires: 999999999999999, path:"/", domain:dmn} );   
   }   
   });   
   var bg=document.getElementById('background')   
   var backgr=getCookie("background")   
   if(backgr){bg.innerHTML="<input id='bg' placeholder='Ваша прямая ссылка на фон, без кавычек' size='35' onclick='select()' value="+backgr+"></input><center><button value='Сменить фон' onclick='bgchange()'>Сменить фон</button></center>";}   
   else if(!backgr){   
   bg.innerHTML="<input id='bg' placeholder='Ваша прямая ссылка на фон, без кавычек' size='35' onclick='select()'></input><center><button value='Сменить фон' onclick='bgchange()'>Сменить фон</button></center>";   
   }   
   if(backgr){$('#bgs :nth-child(2)').attr("value",backgr);$('#bgs :nth-child(2)').removeAttr("disabled");}   
   });   
   function deletebg(){   
   if(!getCookie("background")){alert("У вас нет установленного фона, удалять нечего")}else{   
   setCookie("background", null, { expires: -1, path:"/", domain:dmn} )   
   alert("Фон выставлен по умолчанию");   
   location.reload(true)}   
   }   
   function bgchange(){   
   if(bg.value!=''){var bg_link=bg.value   
   if(!bg_link.match(/http[^\s\"]+[^\" >]*?/ig)){alert("Вы ввели неверную ссылку на фон")}   
   else{   
   setCookie("background", bg_link, { expires: 999999999, path:"/", domain:dmn} )   
   alert("Новый фон установлен, перезагрузите главную страницу")   
   location.reload(true)   
   }   
   }else{alert("Вы не ввели ссылку на фон")}   
   }   
   </script>


[Table] Далее заходим в Общие шаблоны ->Таблица стилей (CSS) и помещаем в любое место, лучше в самый конец чтобы не запутаться [/Table]

Code
.bg_temp{   
   background-Position: center;   
   background-Attachment: fixed;   
   background-Repeat: no-repeat;   
   background-size: 100% 100%;   
   -moz-background-size: 100% 100%;   
   -o-background-size: 100% 100%;   
   -webkit-background-size: 100% 100%;   
   }   
   .bg{   
   background-Position: center;   
   background-Attachment: fixed;   
   background-Repeat: no-repeat;   
   }


[Table] Далее идут различия, надо в Глобальные блоки->Верхняя часть сайта в самое начало запихнуть следующий код [/Table]

Code
<script type="text/javascript">   
   function getCookie(name) {   
   var matches = document.cookie.match(new RegExp(   
   "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"   
   ))   
   return matches ? decodeURIComponent(matches[1]) : undefined   
   }   
   function setCookie(name, value, props) {   
   props = props || {}   
   var exp = props.expires   
   if (typeof exp == "number" && exp) {   
   var d = new Date()   
   d.setTime(d.getTime() + exp*1000)   
   exp = props.expires = d   
   }   
   if(exp && exp.toUTCString) { props.expires = exp.toUTCString() }   
     
   value = encodeURIComponent(value)   
   var updatedCookie = name + "=" + value   
   for(var propName in props){   
   updatedCookie += "; " + propName   
   var propValue = props[propName]   
   if(propValue !== true){ updatedCookie += "=" + propValue }   
   }   
   document.cookie = updatedCookie   
     
   }   
   var bg_li=getCookie("background")   
   if(bg_li){document.body.style.backgroundImage = 'url('+bg_li+')';}else{document.body.style.backgroundImage = 'url(/wallpaper.jpg)'}   
   </script>


[Table] Сохраняем, и переходим в Глобальные блоки->Нижняя часть сайта и тоже в самое начало вставляем следующий код [/Table]

Code
<script type="text/javascript">   
   function getCookie(name) {   
   var matches = document.cookie.match(new RegExp(   
   "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"   
   ))   
   return matches ? decodeURIComponent(matches[1]) : undefined   
   }   
   function setCookie(name, value, props) {   
   props = props || {}   
   var exp = props.expires   
   if (typeof exp == "number" && exp) {   
   var d = new Date()   
   d.setTime(d.getTime() + exp*1000)   
   exp = props.expires = d   
   }   
   if(exp && exp.toUTCString) { props.expires = exp.toUTCString() }   
     
   value = encodeURIComponent(value)   
   var updatedCookie = name + "=" + value   
   for(var propName in props){   
   updatedCookie += "; " + propName   
   var propValue = props[propName]   
   if(propValue !== true){ updatedCookie += "=" + propValue }   
   }   
   document.cookie = updatedCookie   
     
   }   
   if(getCookie("stretched")=="yes"){$('#str').attr('checked','true');$('body').removeClass('bg').addClass('bg_temp');} else if(getCookie("stretched")=="no" || !getCookie("stretched")){$('#str').removeAttr('checked');$('body').removeClass('bg_temp').addClass('bg');}   
   document.body.style.padding = '0';   
   document.body.style.margin = '0';   
   </script>


[Table] Сохраняем и переходим к следующему пункту настройка всего выше написанного
[/Table]
Итак, скрипт вы установили, далее проверяем код из первого пункта, меняем, если хотим, в списке
Дата: Среда, 08.06.2011, 20:34 | Сообщение # 2
Offline
  • Премиум
  • N1NT3NDO - Как Инь-Янь
  • 255 Сообщения
Dell, Спасибо полезная вещь!
[TableRed]Улыбка мамы дороже каждого из вас.[/TableRed]
Дата: Среда, 08.06.2011, 20:42 | Сообщение # 3
Offline
  • Пользователь
  • I'm Back
  • 313 Сообщения
ого прикольно smile
I'm home like a TERMENATOR :D
  • Страница 1 из 1
  • 1
Поиск:
Администрация проекта не несет ответственности за публикуемые материалы.
Дизайн полностью принадлежит "Up-Rise.Ru".
Дизайн сайта разработал life_man.
© 2024 Сайт управляется системой uCoz.