PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (5): « 1 2 3 4 [5]

> Найдено сообщений: 68
Сайга-12 Отправлено: 04 Января, 2014 - 23:19:10 • Тема: Вернуть старое значение переменной. • Форум: Вопросы новичков

Ответов: 10
Просмотров: 377
Ох, ну неужели эта чудо-функция мне приснилась!? Перерыл весь мануал, не нашёл, хотя, почему-то я уверен, что именно там-то я её и видел. Просто, я пишу cms-ку, результат нубовский и вероятно её ни кто не будет пользоваться, зато я рад, что моими скудными знаниями, могу писать что-то больше чем торговые сайты. Для моих работ по разработке cms, это очень важно... Ума не приложу, как переменную __LINE__ заставить меня слушаться. ;)
Сайга-12 Отправлено: 04 Января, 2014 - 23:09:24 • Тема: Вернуть старое значение переменной. • Форум: Вопросы новичков

Ответов: 10
Просмотров: 377
Так дело не пойдёт. Это мне нужно для работы с переменной __LINE__ . Иначе, в моей пользовательской функции придётся добавлять дополнительный аргумен для переменной __LINE__, это не удобно.
Сайга-12 Отправлено: 04 Января, 2014 - 23:02:22 • Тема: Вернуть старое значение переменной. • Форум: Вопросы новичков

Ответов: 10
Просмотров: 377
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  $a = 0;
  3.  $a = 1;
  4. /*$a = 1, но нужно, чтобы эта переменная вернула значение "0", то есть, на 1 шаг назад.
  5. Слышал, что-то подобное можно сделать. Со статическими классами, по-моему подобные фокусы делались. Это по-моему называется позднее статическое связывание.
  6. */
  7. ?>
Сайга-12 Отправлено: 23 Декабря, 2013 - 17:47:44 • Тема: Помогите пожалуйста упростить код. • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 473
Добрый вечер.
Не могу упростить код, помогите пожалуйста.
Пытался методы-обработчики (onclick, onmousedown) возвести в переменную: Oper[0] = onclick, Oper[1] = onmousedown, но это не работает.
Скинул 2 фрагмента скрипта, и оба находятся в одном и том же цикле. Они с виду почти одинаковы.


CODE (javascript):
скопировать код в буфер обмена
  1. Elements[i].onclick=function(x){
  2.         return function(){
  3.                 GenClick(x)
  4.                 GenMouseDown(x)
  5.                 GenDiv.innerHTML = "onclick" + x
  6.         }
  7. }(i)
  8. Elements[i].onmousedown=function(x){
  9.         return function(){
  10.                 GenClick(x)
  11.                 GenMouseDown(x)
  12.                 GenDiv.innerHTML = "onmousedown" + x
  13.         }
  14. }(i)
Сайга-12 Отправлено: 21 Декабря, 2013 - 14:13:47 • Тема: Зафункционировать замыкание. • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 682
SAD пишет:
а вы уверены, что вам везде нужно замыкание?

Не везде, но при выборке DOM элемента. А этим я пользуюсь часто.
Сайга-12 Отправлено: 20 Декабря, 2013 - 21:38:46 • Тема: Зафункционировать замыкание. • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 682
Код длинный, и в каждую функцию приходится прописывать замыкание. Как упростить код, чтобы не писать заново замыкание для новой функции?
Есть идея создать функцию замыкания, а её аргументы - это переменная цикла и название исполняемой функции.

CODE (javascript):
скопировать код в буфер обмена
  1. function ДостовучаяГадина(i, FuncName){ //Я так назвал функцию замыкания, - реально достала. ) В аргументах переменная цикла и название исполняемой функции.
  2.         return function() {
  3.                 FuncName(i) // Исполняемая функция.
  4.         }
  5. }

Но так почему-то не прокатило.
Не знаю, понятно ли изъяснился...
Сайга-12 Отправлено: 19 Декабря, 2013 - 17:37:17 • Тема: Ни как не могу настроить выборку элемента посредством клика. • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 538
IllusionMH пишет:
Сайга-12, ну прям как по статье.
Изучайте http://javascript[dot]ru/basic/closure

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

Спасибо огромное! Еще пару валенков, и я буду гуру. )
У меня недостаточно сообщений на форуме, чтобы кликнуть на "Спасибо".
Реально теперь работает.
Сайга-12 Отправлено: 19 Декабря, 2013 - 13:28:38 • Тема: Ни как не могу настроить выборку элемента посредством клика. • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 538
Первый вариант, без визуальных результатов:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.         var Block = document.getElementById('ОсновнойБлок') //Выбераю родительский элемент.
  3.         var elems = Block.getElementsByTagName('*') //Выбераю всех детишек родителя.
  4.        
  5.         for(var i=0; i<elems.length; i++) {
  6.                 var ThisElem = elems[i].id // Беру id элемента. По принципу: [id].onclick=function() [код], - всё прекрасно работает.
  7.                 ThisElem.onclick=function(){ // Но здесь этот принцип не работает.
  8.                         alert(i) // alert для проверки, какой элемент по индексу выбрался. На данный момент ни одного.
  9.                 }
  10.         }
  11.  

Второй вариант, с визуальными результатами:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.         var Block = document.getElementById('ОсновнойБлок') //Выбераю родительский элемент.
  3.         var elems = Block.getElementsByTagName('*') //Выбераю всех детишек родителя.
  4.        
  5.         for(var i=0; i<elems.length; i++) {
  6.                 elems[i].onclick=function(){ // В обработчик кладу не спеша текущий элемент без id.
  7.                         alert(i) // При клике на любого ребёночка родителя "ОсновнойБлок", в alert пишет последний элемент.
  8.                 }
  9.         }
  10.  
  11.  

В чём ошибка?
(Добавление)
Понять не могу, почему ни кто не отвечает, то ли мой пост глупый, то ли реально сложный.

Страниц (5): « 1 2 3 4 [5]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB