Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Архив » Запросы по скриптам[3]


Запросы по скриптам[3]

Сообщений 781 страница 800 из 1000

1

Инструменты для поиска и редактирования стиля (скриптов).

Как с помощью браузера можно определить элемент дизайна.

Каталог скриптов/CSS

Полезные скрипты, необходимые темы для новичков, а также ссылки на сайты рассказывающие что такое НТМЛ и CSS.

Типовые Вопросы (ЧаВо)

Ответы на часто задаваемые вопросы.

Как задавать вопросы! Разница между стилем и скриптом. ( Советы)

Плюс к названию темы еще и Памятка.

+1

781

ыыы )
я почитала свой пост внимательно и (хвала гуглу) сделала это сама. )))

поглядите, плз, код - оно покатит? а то опыта в этом деле маловато.

Свернутый текст

<script type="text/javascript">

(function(){
if(!(GroupID!=3 && $('#pun-viewtopic').length && $('#post').length && this.document==top.document)) return;

//888888888 .serialize() под Win 1251 88888888888888888888
// Инициализируем таблицу перевода
var transAnsiAjaxSys = [];
var arr=[0x402,0x403,0x201A,0x453,0x201E,0x2026,0x2020,0x2021,0x20AC,0x2030,0x409,0x2039,
0x40A,0x40C,0x40B,0x40F,0x452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,'0',0x2122,0x459,0x203A,0x45A,
0x45C,0x45B,0x45F,0x0A0,0x40E,0x45E,0x408,0x0A4,0x490,0x0A6,0x0A7,0x401,0x0A9,0x404,0x0AB,
0x0AC,0x0AD,0x0AE,0x407,0x0B0,0x0B1,0x406,0x456,0x491,0x0B5,0x0B6,0x0B7,0x451,0x2116,0x454,
0x0BB,0x458,0x405,0x455,0x457,0x410,0x411,0x412,0x413,0x414,0x415,0x416,0x417,0x418,0x419,
0x41A,0x41B,0x41C,0x41D,0x41E,0x41F,0x420,0x421,0x422,0x423,0x424,0x425,0x426,0x427,0x428,
0x429,0x42A,0x42B,0x42C,0x42D,0x42E,0x42F,0x430,0x431,0x432,0x433,0x434,0x435,0x436,0x437,
0x438,0x439,0x43A,0x43B,0x43C,0x43D,0x43E,0x43F,0x440,0x441,0x442,0x443,0x444,0x445,0x446,
0x447,0x448,0x449,0x44A,0x44B,0x44C,0x44D,0x44E,0x44F
];
var arLng = arr.length;
for (var i = 0; i < arLng; i++)transAnsiAjaxSys[arr[i]]=i+128;
for (var i = 0x410; i <= 0x44F; i++) transAnsiAjaxSys[i] = i - 0x350; // А-Яа-я

var MyencodeURIwin125 = function(str){
  var ret = [];
  // Составляем массив кодов символов, попутно переводим кириллицу
  for (var i = 0; i < str.length; i++)
  {
    var n = str.charCodeAt(i);
    if (typeof transAnsiAjaxSys[n] != 'undefined')
      n = transAnsiAjaxSys[n];
    if (n <= 0xFF)
      ret.push(n);
  }
  return  escape(String.fromCharCode.apply(null, ret)).replace(/\+/mg,'%2B');
}

$.fn.extend({serialize : function() { //!!RE: input type="submit" - не вписывается в serialize;
var s = '';
var obj = this.serializeArray();
var Lng = obj.length;
for(var i=0;i<Lng;i++){
   if(i)s+='&';
   s+=MyencodeURIwin125(obj[i].name)+'='+MyencodeURIwin125(obj[i].value);
}
return s; }
})
//88888//END// .serialize() под Win 1251 88888888888888888888

function ajaxSendForm(lnk,frmDat){
$.ajax({
  url: lnk,
  dataType: "html",
  type: "POST",
  data: frmDat,
  success: function(response) {//
   var prev=$(response).find('#post-preview');
   var errs = $(response).find('#post-errors');
   if(prev.length) {
     var str = prev.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors').remove();
     $('#post').prepend(str);
   }
   if(errs.length) {
     var str = errs.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors',parent.document.body).remove();
     $('#post',parent.document.body).prepend(str);
   }
      $('#post2').remove();
  busy = false;
  return;
  },
    error:  function(response, str){
      for(var key in response) {
         alert('error:'+key+':'+response[key])
      }
     //alert('Возникла ошибка: ' + xhr.responseCode);
   }
});
}
    function NewForm (){ /*==123==;
<form id="post2" style="display:none" class="container" method="post" action="/post.php?action=post&fid=#$1#">
<div id="formkey"></div>
<div id="formetc" style="display:none"></div>
<input type="hidden" name="form_sent" value="1">
<input type="hidden" name="form_user" value="#$2#">
<textarea id="main-reply" name="req_message" rows="20"></textarea>
<input class="button-pr" name="preview" value="Посмотреть" accesskey="p">
<input class="button-ed" name="edit" value="Редактировать" accesskey="p">

</form>
      ==123==;*/
   } NewForm = NewForm.toString().split('==123==;')[1];NewForm = NewForm.replace('#$2#',UserLogin);

var busy = false
Preview = function () {
      if(busy) return;
      busy = true;
      $('#post2').remove();
      form = $(NewForm);
      var lnk = $('#post').attr('action')
      var val = $('#main-reply').val()
      form.insertBefore("#post");
      form.find('#main-reply').val(val);
      var hta = $('#post fieldset').hide(1500);
      if(!process_form(form[0])){$('#post2').remove();busy = false; return;}
      var frmDat=form.serialize();//alert(frmDat);
      ajaxSendForm(lnk,frmDat);
}
Edit = function () {
      var sta = $('#post fieldset').show(1500);
      var hppr = $('#post-preview').hide(1500);
}

var kn_Preview = ' <input type="button" class="button-pr" value="Посмотреть" onclick="Preview()"/> <input type="button" class="button-ed" value="Редактировать" onclick="Edit()" /> ';

$('#post').find('<input[value="Посмотреть"]').hide().after(kn_Preview);

}())

</script>

Отредактировано Герда (Пн, 23 Фев 2015 21:27:16)

+1

782

Герда, чуть подправил, А Ты молодца!

Свернутый текст
Код:
<!-- Предпросмотр в Топике с кнопкой превью и редактировать -->
<script type="text/javascript">
(function(){
 if(!(GroupID!=3 && $('#pun-viewtopic').length && $('#post').length && this.document==top.document)) return;

//888888888 .serialize() под Win 1251 88888888888888888888
// Инициализируем таблицу перевода
var transAnsiAjaxSys = [];
var arr=[0x402,0x403,0x201A,0x453,0x201E,0x2026,0x2020,0x2021,0x20AC,0x2030,0x409,0x2039,
0x40A,0x40C,0x40B,0x40F,0x452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,'0',0x2122,0x459,0x203A,0x45A,
0x45C,0x45B,0x45F,0x0A0,0x40E,0x45E,0x408,0x0A4,0x490,0x0A6,0x0A7,0x401,0x0A9,0x404,0x0AB,
0x0AC,0x0AD,0x0AE,0x407,0x0B0,0x0B1,0x406,0x456,0x491,0x0B5,0x0B6,0x0B7,0x451,0x2116,0x454,
0x0BB,0x458,0x405,0x455,0x457,0x410,0x411,0x412,0x413,0x414,0x415,0x416,0x417,0x418,0x419,
0x41A,0x41B,0x41C,0x41D,0x41E,0x41F,0x420,0x421,0x422,0x423,0x424,0x425,0x426,0x427,0x428,
0x429,0x42A,0x42B,0x42C,0x42D,0x42E,0x42F,0x430,0x431,0x432,0x433,0x434,0x435,0x436,0x437,
0x438,0x439,0x43A,0x43B,0x43C,0x43D,0x43E,0x43F,0x440,0x441,0x442,0x443,0x444,0x445,0x446,
0x447,0x448,0x449,0x44A,0x44B,0x44C,0x44D,0x44E,0x44F
];
var arLng = arr.length;
for (var i = 0; i < arLng; i++)transAnsiAjaxSys[arr[i]]=i+128;
for (var i = 0x410; i <= 0x44F; i++) transAnsiAjaxSys[i] = i - 0x350; // А-Яа-я

var MyencodeURIwin125 = function(str){
  var ret = [];
  // Составляем массив кодов символов, попутно переводим кириллицу
  for (var i = 0; i < str.length; i++)
  {
    var n = str.charCodeAt(i);
    if (typeof transAnsiAjaxSys[n] != 'undefined')
      n = transAnsiAjaxSys[n];
    if (n <= 0xFF)
      ret.push(n);
  }
  return  escape(String.fromCharCode.apply(null, ret)).replace(/\+/mg,'%2B');
}

$.fn.extend({serialize : function() {	//!!RE: input type="submit" - не вписывается в serialize;
 var s = '';
 var obj = this.serializeArray();
 var Lng = obj.length;
 for(var i=0;i<Lng;i++){
   if(i)s+='&';
   s+=MyencodeURIwin125(obj[i].name)+'='+MyencodeURIwin125(obj[i].value);
 }
 return s; }
})
//88888//END// .serialize() под Win 1251 88888888888888888888

function ajaxSendForm(lnk,frmDat){
 $.ajax({
  url: lnk,
  dataType: "html",
  type: "POST",
  async: false,
  data: frmDat,
  success: function(response) {//
   var prev=$(response).find('#post-preview');
   var errs = $(response).find('#post-errors');
   if(prev.length) {
     var str = prev.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors').remove();
     $('#post').prepend(str);
   }
   if(errs.length) {
     var str = errs.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors',parent.document.body).remove();
     $('#post',parent.document.body).prepend(str);
   }
      $('#post2').remove();
  busy = false;
  return;
  },
    error:  function(response, str){
      for(var key in response) {
         alert('error:'+key+':'+response[key])
      }
     //alert('Возникла ошибка: ' + xhr.responseCode);
   }
 });
}
    function NewForm (){ /*==123==;
	<form id="post2" style="display:none" class="container" method="post" action="/post.php?action=post&fid=#$1#">
	<div id="formkey"></div>
	<div id="formetc" style="display:none"></div>
	<input type="hidden" name="form_sent" value="1">
	<input type="hidden" name="form_user" value="#$2#">
	<textarea id="main-reply" name="req_message" rows="20"></textarea>
	<input class="button-pr" name="preview" value="Посмотреть" accesskey="p">
	<input class="button-ed" name="edit" value="Редактировать" accesskey="p">
	</form>
      ==123==;*/
   } NewForm = NewForm.toString().split('==123==;')[1];NewForm = NewForm.replace('#$2#',UserLogin);

var busy = false
Preview = function () {
      if(busy) return;
      busy = true;
      $('#post2').remove();
      form = $(NewForm);
      var lnk = $('#post').attr('action')
      var val = $('#main-reply').val()
      form.insertBefore("#post");
      form.find('#main-reply').val(val);
      if(!process_form(form[0])){$('#post2').remove();busy = false; return;}
      var frmDat=form.serialize();//alert(frmDat);
      ajaxSendForm(lnk,frmDat);
      $('#post fieldset').slideUp(800,function () {$('#post-preview').slideDown(700);});
      $('#post-preview').hide();

      
}
Edit = function () {
     $('#post fieldset').slideDown(700);
     $('#post-preview').slideUp(700);
}
var kn_Preview = ' <span id="priv-btn"><input type="button" class="button-pr" value="Посмотреть" onclick="Preview()"/> <input type="button" class="button-ed" value="Редактировать" onclick="Edit()" /></span> ';
$('#post').find('<input[value="Посмотреть"]').hide().after(kn_Preview);
}())
</script>

Копируй полностью, Поправил очередность.

+1

783

Deff написал(а):

А Ты молодца!

не, молодец - ты, а я сама в шоке, шо хоть две строчки родила... ))

по длине при больших постах - согласна, но если проверяешь на корректность три строчки, компактнее просмотр. хотя с нашими замутами по дизайну, у нас компактность близовская теряется, ибо попросили растянуть форму ответа.

слуш, а ты не знаешь, как сделать в туда анимацию не задвигания, а нечто более плавное? например, растворение?
с такими попрыгушками как-то не здорово.

0

784

Герда написал(а):

а нечто более плавное? например, растворение?

Не получицо, растворение двух блоков, открываемых/скрываемых последовательно-инверсно, - завсегда прыгать будет, поскольку при растворении - высота постоянна, значит как только открывается - пустой блок скачет вверх. растворение хорошо, когда один блок не привязанный к иным или с абсолютным позиционированием, чего нельзя сделать тут, ибо высота заранее неизвестна.
Вообще неплохо бы сделать Видео как у тебя скачет, ибо у меня - плавно,
Зы - Возможно ты первый скрипт скопировала неполностью, там поправка вверху, поправил очередность
==============
Ксать. Возможно, именно прыжком, без времени анимации будет более удобоваримо, примерно как текущий спойлер с некой начальной высотой(при равенстве высот - т.е небольшом по высоте тексте - вообще незаметно)

Свернутый текст
Код:
<!-- Предпросмотр в Топике с кнопкой превью и редактировать -->
<script type="text/javascript">
(function(){
 if(!(GroupID!=3 && $('#pun-viewtopic').length && $('#post').length && this.document==top.document)) return;

//888888888 .serialize() под Win 1251 88888888888888888888
// Инициализируем таблицу перевода
var transAnsiAjaxSys = [];
var arr=[0x402,0x403,0x201A,0x453,0x201E,0x2026,0x2020,0x2021,0x20AC,0x2030,0x409,0x2039,
0x40A,0x40C,0x40B,0x40F,0x452,0x2018,0x2019,0x201C,0x201D,0x2022,0x2013,0x2014,'0',0x2122,0x459,0x203A,0x45A,
0x45C,0x45B,0x45F,0x0A0,0x40E,0x45E,0x408,0x0A4,0x490,0x0A6,0x0A7,0x401,0x0A9,0x404,0x0AB,
0x0AC,0x0AD,0x0AE,0x407,0x0B0,0x0B1,0x406,0x456,0x491,0x0B5,0x0B6,0x0B7,0x451,0x2116,0x454,
0x0BB,0x458,0x405,0x455,0x457,0x410,0x411,0x412,0x413,0x414,0x415,0x416,0x417,0x418,0x419,
0x41A,0x41B,0x41C,0x41D,0x41E,0x41F,0x420,0x421,0x422,0x423,0x424,0x425,0x426,0x427,0x428,
0x429,0x42A,0x42B,0x42C,0x42D,0x42E,0x42F,0x430,0x431,0x432,0x433,0x434,0x435,0x436,0x437,
0x438,0x439,0x43A,0x43B,0x43C,0x43D,0x43E,0x43F,0x440,0x441,0x442,0x443,0x444,0x445,0x446,
0x447,0x448,0x449,0x44A,0x44B,0x44C,0x44D,0x44E,0x44F
];
var arLng = arr.length;
for (var i = 0; i < arLng; i++)transAnsiAjaxSys[arr[i]]=i+128;
for (var i = 0x410; i <= 0x44F; i++) transAnsiAjaxSys[i] = i - 0x350; // А-Яа-я

var MyencodeURIwin125 = function(str){
  var ret = [];
  // Составляем массив кодов символов, попутно переводим кириллицу
  for (var i = 0; i < str.length; i++)
  {
    var n = str.charCodeAt(i);
    if (typeof transAnsiAjaxSys[n] != 'undefined')
      n = transAnsiAjaxSys[n];
    if (n <= 0xFF)
      ret.push(n);
  }
  return  escape(String.fromCharCode.apply(null, ret)).replace(/\+/mg,'%2B');
}

$.fn.extend({serialize : function() {	//!!RE: input type="submit" - не вписывается в serialize;
 var s = '';
 var obj = this.serializeArray();
 var Lng = obj.length;
 for(var i=0;i<Lng;i++){
   if(i)s+='&';
   s+=MyencodeURIwin125(obj[i].name)+'='+MyencodeURIwin125(obj[i].value);
 }
 return s; }
})
//88888//END// .serialize() под Win 1251 88888888888888888888

function ajaxSendForm(lnk,frmDat){
 $.ajax({
  url: lnk,
  dataType: "html",
  type: "POST",
  async: false,
  data: frmDat,
  success: function(response) {//
   var prev=$(response).find('#post-preview');
   var errs = $(response).find('#post-errors');
   if(prev.length) {
     var str = prev.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors').remove();
     $('#post').prepend(str);
   }
   if(errs.length) {
     var str = errs.wrap('<div></div>').parent().html();
     $('#post #post-preview,#post #post-errors',parent.document.body).remove();
     $('#post',parent.document.body).prepend(str);
   }
      $('#post2').remove();
  busy = false;
  return;
  },
    error:  function(response, str){
      for(var key in response) {
         alert('error:'+key+':'+response[key])
      }
     //alert('Возникла ошибка: ' + xhr.responseCode);
   }
 });
}
    function NewForm (){ /*==123==;
	<form id="post2" style="display:none" class="container" method="post" action="/post.php?action=post&fid=#$1#">
	<div id="formkey"></div>
	<div id="formetc" style="display:none"></div>
	<input type="hidden" name="form_sent" value="1">
	<input type="hidden" name="form_user" value="#$2#">
	<textarea id="main-reply" name="req_message" rows="20"></textarea>
	<input class="button-pr" name="preview" value="Посмотреть" accesskey="p">
	<input class="button-ed" name="edit" value="Редактировать" accesskey="p">
	</form>
      ==123==;*/
   } NewForm = NewForm.toString().split('==123==;')[1];NewForm = NewForm.replace('#$2#',UserLogin);

var busy = false
Preview = function () {
      if(busy) return;
      busy = true;
      $('#post2').remove();
      form = $(NewForm);
      var lnk = $('#post').attr('action')
      var val = $('#main-reply').val()
      form.insertBefore("#post");
      form.find('#main-reply').val(val);
      if(!process_form(form[0])){$('#post2').remove();busy = false; return;}
      var frmDat=form.serialize();//alert(frmDat);
      ajaxSendForm(lnk,frmDat);
      $('#post fieldset').hide()
      $('#post-preview').show();

      
}
Edit = function () {
     $('#post fieldset').show();
     $('#post-preview').hide();
}
var kn_Preview = ' <span id="priv-btn"><input type="button" class="button-pr" value="Посмотреть" onclick="Preview()"/> <input type="button" class="button-ed" value="Редактировать" onclick="Edit()" /></span> ';
$('#post').find('<input[value="Посмотреть"]').hide().after(kn_Preview);
}())
</script>

+1

785

вот с такими параметрами получилось совместить приятное с полезным

$('#post fieldset').hide('slow')
      $('#post-preview').show('slow');

     
}
Edit = function () {
     $('#post fieldset').show('slow');
     $('#post-preview').hide('fast');
}

последний штрих... как можно добавить класс к кнопке, которая сейчас жмякнута?
надо выделить стиль активной кнопки при переключением между форм редактировать/посмотреть

0

786

Герда

Код:
...
Preview = function (th) {
     $('.button-pr').removeClass('selected');$(th).addClass('selected')
      if(busy) return;
      busy = true;
      $('#post2').remove();
      form = $(NewForm);
      var lnk = $('#post').attr('action')
      var val = $('#main-reply').val()
      form.insertBefore("#post");
      form.find('#main-reply').val(val);
      if(!process_form(form[0])){$('#post2').remove();busy = false; return;}
      var frmDat=form.serialize();//alert(frmDat);
      ajaxSendForm(lnk,frmDat);
      $('#post fieldset').hide()
      $('#post-preview').show();

      
}


Edit = function (th) {
     $('.button-pr').removeClass('selected');$(th).addClass('selected')
     $('#post fieldset').show();
     $('#post-preview').hide();
}
var kn_Preview = ' <span id="priv-btn"><input type="button" class="button-pr" value="Посмотреть" onclick="Preview(this)"/> <input type="button" class="button-ed" value="Редактировать" onclick="Edit(this)" /></span> ';
$('#post').find('<input[value="Посмотреть"]').hide().after(kn_Preview);
}())
</script>

Нужный кусок

+1

787

Deff
спс большое.

0

788

Герда написал(а):

$('#post fieldset').hide('slow')      $('#post-preview').show('slow');
                  }Edit = function () {     $('#post fieldset').show('slow');     $('#post-preview').hide('fast');}

Чот Ты мудришь, самый простой и верный последний метод, ибо отдача страницы превью = разная по времени и от состояния интернета и от сервиса. Чисто как спойлер, без вычурности - самое то, и не зависит от параметров

0

789

упс, тут возникает ситуация, когда у обоих кнопок появляется selected

http://se.uploads.ru/7BYux.png

если кликнуть просмотр, а потом вернуться к редактированию, то обе кнопки считают себя активными. (

0

790

Герда

var kn_Preview = ' <span id="priv-btn"><input type="button" class="button-pr" value="Посмотреть" onclick="Preview(this)"/> <input type="button" class="button-pr" value="Редактировать" onclick="Edit(this)" /></span> ';
$('#post').find('<input[value="Посмотреть"]').hide().after(kn_Preview);
}())

Поправь класс у второй  - нафига тьву два разных ? (Я на автомате думал что один)

+1

791

И зачем использовать hide и show, если можно так:

Код:
$('#post fieldset, #post-preview').toggle('slow');

Открытый закроется, закрытый откроется.

0

792

Deff написал(а):

Поправил

Да кривизна какая то.
Написано что можно вставить текст или HTML. Поставил для примера вот что

<script type="text/javascript">
var group = [3];
var img = 'Для того чтобы видеть изображение <a href="http://store.mybb.ru/login.php">войдите на форум</a> или <a href="http://store.mybb.ru/register.php">зарегистрируйтесь</a>';
var link = 'Для того чтобы видеть ссылки <a href="http://store.mybb.ru/login.php">войдите на форум</a> или <a href="http://store.mybb.ru/register.php">зарегистрируйтесь</a>';
for (var i=0; i<group.length; i++) {if(GroupID == group[i]) {if(img.length) {$('.post-content .postimg').replaceWith(img);} if(link.length) {$('.post-content a').replaceWith(link);}}}
</script>

Вот что пишет для изображений

http://savepic.su/5211243m.jpg

http://store.mybb.ru/viewtopic.php?id=1#p4

Вобщем то мне это не надо, я так ради интереса потестил

0

793

Домовой написал(а):

Да кривизна какая то.
Написано что можно вставить текст или HTML. Поставил для примера вот что

Вот что пишет для изображений

Поправил(У тьву получались вложенные преобразования нововставленных ссылок)

+2

794

а есть способ заставить блок статистики отображаться в любом месте форума, а не тока на главной?

0

795

Герда
Нафига лишние запросы плодить ?
Мон сделать запоминание последнего варианта считанного на главной

0

796

Герда

Код:
<script type="text/javascript">
if(window.localStorage){
  if($('#pun-index').length) {
    localStorage.setItem('stats',$('#pun-stats').html());
  } else {
    $('#pun-main').after('<div id="pun-stats" class="section">'+localStorage.getItem('stats')+'</div>');
  }
} else {
  console.log('Error: localStorage');
}
</script>

Отредактировано Fover (Вс, 1 Мар 2015 04:30:19)

+1

797

Deff написал(а):

Поправил

Вот теперь айс))

0

798

Deff написал(а):

Нафига лишние запросы плодить ?
Мон сделать запоминание последнего варианта считанного на главной

можно и так. лишь бы торчала - занимала место )

0

799

Доброго вечера Вам.
Нужен скрипт-запрета входа из страны (Укропия)
именно, что-бы был отсек )))
Буду благодарен.

+ ещё...

искал и не нашел... Поиск...по мому его...

скрытие постов (ссылок, фото), вчера видел, поправленный, но сегодня не нашел

Отредактировано ACT3255 (Вс, 1 Мар 2015 22:06:57)

0

800

ACT3255
Скрипты от пользователей 3
Запрет для Украины поищу ибо писал уже как-то.

0


Вы здесь » Единый форум поддержки » Архив » Запросы по скриптам[3]