PHP.SU

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

Страниц (2): [1] 2 »

> Найдено сообщений: 21
hungel Отправлено: 21 Января, 2016 - 13:40:34 • Тема: Очередной autocomplete • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 909
Проблема решена. допиливанием JS.
Никак не мог заставить его брать ссылку в фокус, теперь работает как надо.

Вот код.

CODE (javascript):
скопировать код в буфер обмена
  1. var suggest_count = 0;
  2. var input_initial_value = '';
  3. var suggest_selected = 0;
  4.  
  5. $(window).load(function(){
  6.     // читаем ввод с клавиатуры
  7.     $("#search_box").keyup(function(I){
  8.         // определяем какие действия нужно делать при нажатии на клавиатуру
  9.         switch(I.keyCode) {
  10.             // игнорируем нажатия на эти клавишы
  11.             case  9:  // tab
  12.             case 13:  // enter
  13.             case 27:  // escape
  14.             case 38:  // стрелка вверх
  15.             case 40:  // стрелка вниз
  16.             break;
  17.  
  18.             default:
  19.                 // производим поиск только при вводе более 1х символов
  20.                 if($(this).val().length>=1){
  21.  
  22.                     input_initial_value = $(this).val();
  23.                     // производим AJAX запрос к crew_search.php, передаем ему GET query, в который мы помещаем наш запрос
  24.                     $.get("crew_search.php", { "query":$(this).val() },function(data){
  25.                         //php скрипт возвращает нам строку, ее надо распарсить в массив.
  26.                         // возвращаемые данные: ['test','test 1','test 2','test 3']
  27.                         var list = eval('('+data+')');
  28.                         suggest_count = list.length;
  29.                         if(suggest_count > 0){
  30.                             // перед показом слоя подсказки, его обнуляем
  31.                             $("#search_advice_wrapper").html("").show();
  32.                             for(var i in list){
  33.                                 if(list[i] != ''){
  34.                                     // добавляем слои позиции
  35.                                     $('#search_advice_wrapper').append('<div class="advice_variant">'+list[i]+'</div>');
  36.                                 }
  37.                             }
  38.                         }
  39.                     }, 'html');
  40.                 }
  41.             break;
  42.         }
  43.     });
  44.  
  45.     //считываем нажатие клавишь, уже после вывода подсказки
  46.     $("#search_box").keydown(function(I){
  47.         switch(I.keyCode) {
  48.             // по нажатию клавишь прячем подсказку
  49.             case 13: // enter
  50.                 $('#search_advice_wrapper').hide();
  51.                 return false;
  52.             break;
  53.             case 27: // escape
  54.                 $('#search_advice_wrapper').hide();
  55.                 return false;
  56.             break;
  57.             // делаем переход по подсказке стрелочками клавиатуры
  58.             case 38: // стрелка вверх
  59.             case 40: // стрелка вниз
  60.                 I.preventDefault();
  61.                 if(suggest_count){
  62.                     //делаем выделение пунктов в слое, переход по стрелочкам
  63.                     key_activate( I.keyCode-39 );
  64.                 }
  65.             break;
  66.         }
  67.     });
  68.    
  69.     // Добавляем фокусировку на элементах в списке
  70.     $("#search_advice_wrapper").keydown(function(I){
  71.         switch(I.keyCode) {
  72.             // по нажатию клавишь прячем подсказку
  73.             case 27: // escape
  74.                 $('#search_advice_wrapper').hide();
  75.                 return false;
  76.             break;
  77.             // делаем переход по подсказке стрелочками клавиатуры
  78.             case 38: // стрелка вверх
  79.             case 40: // стрелка вниз
  80.                 I.preventDefault();
  81.                 if(suggest_count){
  82.                     //делаем выделение пунктов в слое, переход по стрелочкам
  83.                     key_activate( I.keyCode-39 );                    
  84.                 }
  85.             break;
  86.         }
  87.     });
  88.    
  89.    
  90.  
  91.     // делаем обработку клика по подсказке
  92.     $('.advice_variant').live('click',function(){
  93.         // ставим текст в input поиска
  94.         $('#search_box').val($(this).text());
  95.         // прячем слой подсказки
  96.         $('#search_advice_wrapper').fadeOut(350).html('');
  97.     });
  98.  
  99.     // если кликаем в любом месте сайта, нужно спрятать подсказку
  100.     $('html').click(function(){
  101.         $('#search_advice_wrapper').hide();
  102.     });
  103.     // если кликаем на поле input и есть пункты подсказки, то показываем скрытый слой
  104.     $('#search_box').click(function(event){
  105.         //alert(suggest_count);
  106.         if(suggest_count)
  107.             $('#search_advice_wrapper').show();
  108.         event.stopPropagation();
  109.     });
  110. });
  111.  
  112. function key_activate(n){
  113.     $('#search_advice_wrapper div').eq(suggest_selected-1).removeClass('active');
  114.  
  115.     if(n == 1 && suggest_selected < suggest_count){
  116.         suggest_selected++;
  117.     }else if(n == -1 && suggest_selected > 0){
  118.         suggest_selected--;
  119.     }
  120.  
  121.     if( suggest_selected > 0){
  122.         $('#search_advice_wrapper div').eq(suggest_selected-1).addClass('active');
  123.         $('.advice_variant a').eq(suggest_selected-1).focus();
  124.         $("#search_box").val( $('#search_advice_wrapper div').eq(suggest_selected-1).text() );
  125.     } else {
  126.         $("#search_box").val( input_initial_value );
  127.     }
  128. }


Тему можно закрывать.
hungel Отправлено: 19 Января, 2016 - 16:43:06 • Тема: Очередной autocomplete • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 909
Здравствуйте уважаемые форумчане.
Делаю автокомплит для веб приложения и столкнулся с проблемой.
Мне не удалось найти ни одного готового примера для моей задачи. Суть в том, что в большинстве автокомплитов не работают стрелки вверх и вниз, а даже если они работают то клавиша enter помещает содерживое из выпадающего списка в INPUT, а мне нужно, чтобы совершался переход по ссылке из которых у меня и состоит выпадающий список.

Я с JS дружу очень плохо, потому и прошу вашей помощи.
Самый удачный пример который мне удалось найти привожу тут.

html
CODE (htmlphp):
скопировать код в буфер обмена
  1. echo "<script src='".INCLUDES."jscripts/custom.js'></script>";
  2.  
  3. echo "<style>
  4.        .search_area{
  5.            width: 350px;
  6.            margin: 0px;
  7.            position: relative;
  8.        }
  9.  
  10.        #search_box{
  11.            width:200px;
  12.            padding:2px;
  13.            margin:1px;
  14.            border:1px solid #000;
  15.        }
  16.  
  17.        #search_advice_wrapper{
  18.            display:none;
  19.            width: 350px;
  20.            background-color: #eee;
  21.            color: rgb(255, 227, 189);
  22.            -moz-opacity: 0.95;
  23.            opacity: 0.95;
  24.            -ms-filter:'progid:DXImageTransform.Microsoft.Alpha'(Opacity=95);
  25.            filter: progid:DXImageTransform.Microsoft.Alpha(opacity=95);
  26.            filter:alpha(opacity=95);
  27.            z-index:999;
  28.            position: absolute;
  29.            top: 24px; left: 0px;
  30.        }
  31.  
  32.        #search_advice_wrapper .advice_variant{
  33.            cursor: pointer;
  34.            padding: 5px;
  35.            text-align: left;
  36.        }
  37.        #search_advice_wrapper .advice_variant:hover{
  38.            color:#FEFFBD;
  39.            background-color:#818187;
  40.        }
  41.        #search_advice_wrapper .active{
  42.            cursor: pointer;
  43.            padding: 5px;
  44.            color:#FEFFBD;
  45.            background-color:#818187;
  46.        }
  47.  
  48.    </style>";
  49.  
  50. echo "<div class='search_area'>
  51.                 <form action='' method='GET'>
  52.                     <input type='text' name='id' id='search_box' value='' autocomplete='off'>
  53.                 </form>
  54.                 <div id='search_advice_wrapper'></div>
  55.             </div>";


php
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(!empty($_GET['query'])){
  2.     $query = (string)$_GET['query'];
  3.     $array = array();
  4.     $result = dbquery("SELECT personal_id, surname, first_name, middle_name FROM ".$db_prefix."personal WHERE surname like '".$query."%' ORDER BY surname LIMIT 0,6");
  5.     while($data =dbarray($result)){
  6.         $array[] = "<a href=crew_personal.php?id=".$data['personal_id'].">".$data['surname']." ".$data['first_name']." ".$data['middle_name']."</a>";
  7.     }
  8.     echo "['".implode("','", $array)."']";
  9.     //echo "['".implode("','", $array)."']";
  10. }


JS
CODE (javascript):
скопировать код в буфер обмена
  1. var suggest_count = 0;
  2. var input_initial_value = '';
  3. var suggest_selected = 0;
  4.  
  5. $(window).load(function(){
  6.     // читаем ввод с клавиатуры
  7.     $("#search_box").keyup(function(I){
  8.         // определяем какие действия нужно делать при нажатии на клавиатуру
  9.         switch(I.keyCode) {
  10.             // игнорируем нажатия на эти клавишы
  11.             case  9:  // tab
  12.             case 13:  // enter
  13.             case 27:  // escape
  14.             case 38:  // стрелка вверх
  15.             case 40:  // стрелка вниз
  16.             break;
  17.  
  18.             default:
  19.                 // производим поиск только при вводе более 1х символов
  20.                 if($(this).val().length>=1){
  21.  
  22.                     input_initial_value = $(this).val();
  23.                     // производим AJAX запрос к crew_search.php, передаем ему GET query, в который мы помещаем наш запрос
  24.                     $.get("crew_search.php", { "query":$(this).val() },function(data){
  25.                         //php скрипт возвращает нам строку, ее надо распарсить в массив.
  26.                         // возвращаемые данные: ['test','test 1','test 2','test 3']
  27.                         var list = eval('('+data+')');
  28.                         suggest_count = list.length;
  29.                         if(suggest_count > 0){
  30.                             // перед показом слоя подсказки, его обнуляем
  31.                             $("#search_advice_wrapper").html("").show();
  32.                             for(var i in list){
  33.                                 if(list[i] != ''){
  34.                                     // добавляем слои позиции
  35.                                     $('#search_advice_wrapper').append('<div class="advice_variant">'+list[i]+'</div>');
  36.                                 }
  37.                             }
  38.                         }
  39.                     }, 'html');
  40.                 }
  41.             break;
  42.         }
  43.     });
  44.  
  45.     //считываем нажатие клавишь, уже после вывода подсказки
  46.     $("#search_box").keydown(function(I){
  47.         switch(I.keyCode) {
  48.             // по нажатию клавишь прячем подсказку
  49.             case 13: // enter
  50.                 $('#search_advice_wrapper').hide();
  51.                 return false;
  52.             break;
  53.             case 27: // escape
  54.                 $('#search_advice_wrapper').hide();
  55.                 return false;
  56.             break;
  57.             // делаем переход по подсказке стрелочками клавиатуры
  58.             case 38: // стрелка вверх
  59.             case 40: // стрелка вниз
  60.                 I.preventDefault();
  61.                 if(suggest_count){
  62.                     //делаем выделение пунктов в слое, переход по стрелочкам
  63.                     //key_activate( I.keyCode-39 );
  64.                     if (key_activate( I.keyCode == 40 )) {
  65.                         var focused = $(':focus');
  66.                         //$(this).parent().next().find("a").focus();
  67.                         focused.parent().next().find('a').focus();
  68.                         //$(".advice_variant:focus").next().find('a.advice_variant').focus();      
  69.                         //$('.advice_variant:focus').next().focus();      
  70.                     }    
  71.                     if (key_activate( I.keyCode == 38 )) {      
  72.                         $('.advice_variant:focus').prev().focus();      
  73.                     }      
  74.                    
  75.                 }
  76.             break;
  77.         }
  78.     });
  79.  
  80.     // делаем обработку клика по подсказке
  81.     $('.advice_variant').live('click',function(){
  82.         $('.advice_variant:focus').focus();
  83.         // ставим текст в input поиска
  84.         $('#search_box').val($(this).text());
  85.         // прячем слой подсказки
  86.         $('#search_advice_wrapper').fadeOut(350).html('');
  87.     });
  88.  
  89.     // если кликаем в любом месте сайта, нужно спрятать подсказку
  90.     $('html').click(function(){
  91.         $('#search_advice_wrapper').hide();
  92.     });
  93.     // если кликаем на поле input и есть пункты подсказки, то показываем скрытый слой
  94.     $('#search_box').click(function(event){
  95.         //alert(suggest_count);
  96.         if(suggest_count)
  97.             $('#search_advice_wrapper').show();
  98.         event.stopPropagation();
  99.     });
  100. });
  101.  
  102. function key_activate(n){
  103.     $('#search_advice_wrapper div').eq(suggest_selected-1).removeClass('active');
  104.  
  105.     if(n == 1 && suggest_selected < suggest_count){
  106.         suggest_selected++;
  107.     }else if(n == -1 && suggest_selected > 0){
  108.         suggest_selected--;
  109.     }
  110.  
  111.     if( suggest_selected > 0){
  112.         $('#search_advice_wrapper div').eq(suggest_selected-1).addClass('active');
  113.         $("#search_box").val( $('#search_advice_wrapper div').eq(suggest_selected-1).text() );
  114.     } else {
  115.         $("#search_box").val( input_initial_value );
  116.     }
  117. }
  118.  
hungel Отправлено: 27 Апреля, 2013 - 22:25:32 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
Вот и я свой пытаюсь изобрести. Просто пытаюсь учесть как можно больше вариантов и произвести оптимизацию. Делаю портал, там много всего и боюсь в 10 запросов уложиться ну никак не получится. Пытаюсь оптимизировать все что возможно. Потом еще прикручу кэширование, но двиг должен хорошо работать и без кэширования. Ушел спать, вернусь завтра.
hungel Отправлено: 27 Апреля, 2013 - 22:17:59 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
А двиг какой? Может есть смысл не изобретать велосипед, а использовать хорошо оптимизированный двиг.
hungel Отправлено: 27 Апреля, 2013 - 22:14:51 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
В админке и у меня 8, там и грузить особо нечему. Что за двиг с самой тяжелой страницей в 10 запросов? Это без кэширования?
hungel Отправлено: 27 Апреля, 2013 - 22:07:50 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
На страницу может и не страшно, но у меня на странице уже 28 запросов, вот и пытаюсь оптимизировать. Это целых 4 запроса всего на одну панель, а если панелей больше, две, три, а если десять. По 4 запроса на панель уже 40 запросов только от панелей, а выборка новостей, рейтингов, структуры меню, настроек движка. Сервер то не резиновый, а если и резиновый (мощный) его возможности все равно не безграничны.
hungel Отправлено: 27 Апреля, 2013 - 21:53:32 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
Дело в том что при использовании выборки типа
SELECT *
FROM A, B
WHERE a = c;

Можно указывать только общий WHERE для всей выборки и когда я указываю все нужные мне условия запрос ничего не возвращает, а сравнивать поля в таблицах мне и не нужно. Мне бы подошел UNION но тогда у меня вываливается из запроса submit_id потому что с помощью UNION можно выбирать только одинаковое количество столбцов, но и на этом проблемы не заканчиваются. Дело в том, что все данные помещаются в столбцы с названиями столбцов первой таблицы и как идентифицировать где новости, где блог, а где сообщения не понятно.

Про JOIN я тоже знаю и попробовал много разных вариантов, сейчас и не вспомню все, но нужного результат не добился.
hungel Отправлено: 27 Апреля, 2013 - 21:01:23 • Тема: Легкий сложный SELECT • Форум: SQL и Архитектура БД

Ответов: 10
Просмотров: 105
Доброго времени суток.
Задача у меня до смешного простая, но как выяснилось решить ее не просто.
В панели пользователя нужно показать сколько у него непрочитанных сообщений, сколько черновиков новостей, сколько черновиков записей в блог и если админ, то сколько материалов на утверждение.

С php частью вроде все просто, берем массив полученный из базы и перебором массива смотрим чего нам надо показывать а чего нет.

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

Таблица с сообщениями ( Столбцы указываю только те которые нужно выбирать )
message_id | message_to | message_read

Таблица с новостями
news_id | news_user_id | news_publish

Таблица записей в блог аналогично новостям
blog_id | blog_user_id | blog_publish

Таблица утверждений, нужно просто узнать есть они или нет.
submit_id

Так вот, можно ли выбрать данные из всех этих таблиц с условием что message_to=$user_id, news_user_id=$user_id, blog_user_id=$user_id и message_read=0, news_publish=0, blog_publish=0 и собственно есть ли вообще submit_id
hungel Отправлено: 06 Февраля, 2013 - 11:56:10 • Тема: cmp_function • Форум: Напишите за меня, пожалуйста

Ответов: 0
Просмотров: 28
Доброго времени суток.

Есть таблица с комментариями, в которой есть id, parent_id, child_id и level
Возникла задача вывести комментарии в виде дерева. Рекурсивную выборку из БД по понятным причинам использовать не хочу. Возникла мысль рекурсивно отсортировать массив с уже выбранными в него комментариями. массив выглядит так:

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [0] => Array
  4.         (
  5.             [id] => 1
  6.             [i] => 0
  7.             [parent_id] => 0
  8.             [child_id] => 2
  9.             [level] => 0
  10.             [comment_message] =>
  11. Тест древовидных комментов 1
  12.         )
  13.  
  14.     [1] => Array
  15.         (
  16.             [id] => 2
  17.             [i] => 1
  18.             [parent_id] => 1
  19.             [child_id] => 0
  20.             [level] => 1
  21.             [comment_message] =>
  22. Тест древовидных комментов 2
  23.         )
  24.  
  25.     [2] => Array
  26.         (
  27.             [id] => 3
  28.             [i] => 2
  29.             [parent_id] => 0
  30.             [child_id] => 6
  31.             [level] => 0
  32.             [comment_message] =>
  33. Тест древовидных комментов 3
  34.         )
  35. )
  36.  


Нужно отсортировать массив так, чтобы элементы приняли правильный порядок, для смещения комментария в дереве, я использую level это можно опустить. По умолчанию масив сортируется как есть, то есть в той последовательности в которой запись добавлялась в БД. Понятно, что ответ может быть добавлен когда угодно и окажется в конце. Для сортировки массива как мне кажется больше всего подходит uasort , но я не могу составить cmp функцию для сортировки.

Если нужно что-то уточнить говорите. Возможно забыл чего.
hungel Отправлено: 22 Октября, 2012 - 16:56:55 • Тема: ajax не возвращает alert • Форум: JavaScript & VBScript

Ответов: 5
Просмотров: 1830
А можно как то обойтись без jquery?
Я специально пытался обойтись без него дабы лишний раз не перегружать страницы фреймворками.
hungel Отправлено: 22 Октября, 2012 - 15:43:17 • Тема: ajax не возвращает alert • Форум: JavaScript & VBScript

Ответов: 5
Просмотров: 1830
В java-script я не силен. Как я понял тот алерт который у меня в самом php работать и не будет, нужно чтобы алерт возвращала функция VoteUp или VoteDown.

Я вызываю VoteUp() так
CODE (htmlphp):
скопировать код в буфер обмена
  1. <a href=''onclick='VoteUp(".$id'].");"><img src='картинка'></a>


Сам php скрипт который делает проверку и пишет в базу

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. //получаем переменные
  3. $id = $_GET['id'];
  4. $action = $_GET['action'];
  5. $user_id=user_id; //Я id из БД получаю, но опустил.
  6.  
  7. //dbcount функция двига которая считает количество чего либо в базе с условиями WHERE. 
  8.  
  9. //Голосуем плюсом, при условии что пользователь еще не голосовал, если голосовал, выдаем alert
  10. if ($action == 'up') {
  11.         $user_rate = dbcount("(vote_value)", VOTE, "vote_user_id='".$'user_id'."' AND vote_target_id='".$id."'");
  12.         if ($user_rate == 0) {
  13.         $result = dbquery("INSERT INTO ".VOTE." SET vote_value='1'"', vote_target_id='{$id}', vote_user_id='user_id'', vote_datestamp='".time()."'");
  14.         } else {
  15.                 echo "<script>alert('Вы уже голосовали.')</script>";
  16.         }


как то так.
hungel Отправлено: 22 Октября, 2012 - 14:45:50 • Тема: ajax не возвращает alert • Форум: JavaScript & VBScript

Ответов: 5
Просмотров: 1830
Доброго времени суток.

Задача очень простая. Нужно сделать обновление рейтинга через ajax. На странице есть две кнопки, плюс и минус. Через Ajax GET запросом это передается php скрипту. Все отлично работает, рейтинг пишется в базу и обновляется на странице с которой голосовали, но если попробовать проголосовать еще раз должен вылететь алерт с надписью "Вы уже голосовали.". Алерт написан в php скрипте который пишет рейтинг в базу. При попытке голосовать второй раз просто ничего не происходит, рейтинг не увеличивается, но и алерт не выдается.

Вот java-script

CODE (htmlphp):
скопировать код в буфер обмена
  1. function createRequestObject() {
  2.   if (typeof XMLHttpRequest === 'undefined') {
  3.     XMLHttpRequest = function() {
  4.       try { return new ActiveXObject("Msxml2.XMLHTTP.6.0"); }
  5.         catch(e) {}
  6.       try { return new ActiveXObject("Msxml2.XMLHTTP.3.0"); }
  7.         catch(e) {}
  8.       try { return new ActiveXObject("Msxml2.XMLHTTP"); }
  9.         catch(e) {}
  10.       try { return new ActiveXObject("Microsoft.XMLHTTP"); }
  11.         catch(e) {}
  12.       throw new Error("This browser does not support XMLHttpRequest.");
  13.     };
  14.   }
  15.   return new XMLHttpRequest();
  16. }
  17.  
  18. function VoteUp(id){
  19. req = new XMLHttpRequest();
  20. req.onreadystatechange = function() {
  21.         if (req.readyState == 4) {
  22.                 if(req.status == 200) {
  23.                         document.getElementById('votestatus'+id).innerHTML = req.responseText;
  24.                 }
  25.         }
  26. }
  27. req.open('GET', 'localhost?page=vote&action=up&id='+id, true);
  28. req.send(null);
  29. document.getElementById('votestatus'+id).innerHTML = ' ';
  30. }


Ну и такая же функция VoteDown только с другим GET запросом.

C php думаю и так все понятно. Идет проверка голосовал или нет и если не голосовал то пишем в базу, а если голосовал выдаем алерт.

Java-script функция VoteUp(id) вызывается с параметром.

Суть вопроса собственно в том, почему не выдается алерт и еще меня смущает, почему при нажатии на ссылку голосовать страница перескакивает наверх, будто обновляется не только рейтинг а вся страница. Подгрузку страницы заметить не могу ибо локалхост. ))

Забыл дописать что при прямом обращении к php файлу все работает и alert выдается.
hungel Отправлено: 13 Августа, 2012 - 18:38:39 • Тема: WYSIWYG • Форум: JavaScript & VBScript

Ответов: 31
Просмотров: 4605
Так или иначе не все знают и не все будут перетягивать картинку в браузер. Все в первую очередь ищут кнопку для этих целей. Можно конечно и пояснения написать, но опять таки не всем это будет удобно, особенно тем у кого монитор маленький или еще веселее нетбук.
Да и пояснения не все читают и ничего тут не поделаешь ))

Я с javascript не очень дружу. Если бы все знал не пришел бы задавать вопросы. Так что если не трудно сейчас задача отключить перетягивание.

Я отвлекаюсь и пока не решил задачу с локализацией phpimage и пока он ничего у меня не закачал, но это потом, сначала надо научить его отображать локализацию. Там лежит файл en_dlg.js и еще один class.upload.en_EN.php

Если переименовать эти файлы в ru_dlg.js и class.upload.ru.RU.php то редактор не грузится. А если переименовать первый файл в просто ru.js то редактор отображается, но в диалоге загрузки локаль не показывает, хотя сам диалог отображается.
hungel Отправлено: 13 Августа, 2012 - 18:07:03 • Тема: WYSIWYG • Форум: JavaScript & VBScript

Ответов: 31
Просмотров: 4605
Кажется я уже начал терять ход ваших мыслей ))
Я писал что остановился на phpimage для TinyMCE.
А вот про запрет на вставку изображения можно и подробнее описать.
Задача все сделать очень просто и с минимальным набором костылей )))
hungel Отправлено: 13 Августа, 2012 - 17:41:30 • Тема: WYSIWYG • Форум: JavaScript & VBScript

Ответов: 31
Просмотров: 4605
Люди, я за вами не успеваю )))

Я даже не успел заметить как появилась вторая страница форума ))

А запретить перетягивание точно никак нельзя? Можно конечно перегонять картинки из base64, но зачем если есть почти готовый плагин.

Может дело не в tiny а в том что надо запретить перетягивание в textarea в которую встраивается tiny?

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB