После нажатия на кнопку, откроется все в окошке.

Тема в разделе "Другие языки", создана пользователем dragonstyle, 6 сен 2010.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    Видел было такое организованно на html с помощью js:
    Нажимаешь на меню, а в центре страницы все показывает. Т.е. страницы теперь не перезагружаются, а сразу все на месте показывает.

    Для тех кто в танке:
    Вот у меня сайт: 161-region.ru
    Я хочу, чтобы после нажатия на кнопку меню справочник, у меня вместо карты области, появился мой список с номерами; после нажатия на кнопку меню О нас, у меня вместо карты области, появилась информация о сайте. И т.д.

    Кто знает хоть примерно, как это сделать пишите. Это не из тяжелых, видел не большой код... Только было это года 2 назад. Да и в шабах дле видел, подобную реализацию.
     
  2. CheburatoR-all

    CheburatoR-all Гипножаба

    Регистр.:
    26 апр 2009
    Сообщения:
    296
    Симпатии:
    437
    Это называется AJAX.
    Тебе значится надо гуглить в сторону AJAX+Jquery
    Использование php здесь минимально (От него вообще можно отказаться )
    Теория:
    http://ru.wikipedia.org/wiki/AJAX

    http://ru.wikipedia.org/wiki/Jquery В разделе ссылки есть много ссылочек
    http://javascript.ru/ - Тут есть учебник по AJAX

    Примерно так гуглить
     
  3. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    нашел я http://www.codething.ru/ajax.php , но не получается связать с картами я :(

    P.s. я видел проще, не помню на чем, но кажется на js:
    Все это делается на 1 странице: Идет скрипт, и по середине скрипта прописывается мой текст. После нажатия на кнопки меню, вылезает в блоке контент - текст.
    Вот мой html:
     
  4. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    Уже все работает, но есть бага. Когда делаешь запрос на открытие окна Яндекс карт, страница перезагружается и становится белого цвета. Вот код страницы maps.html:
     
  5. Mr.Emm

    Mr.Emm Постоялец

    Регистр.:
    5 май 2008
    Сообщения:
    144
    Симпатии:
    107
    Проверил код на локалке, не понял в чем проблема, вроде все как положено..,
    по клику на ссылке ЯНДЕКС - открывает карту в новой вкладке.
     
  6. dragonstyle

    dragonstyle Читатель

    Заблокирован
    Регистр.:
    17 ноя 2008
    Сообщения:
    525
    Симпатии:
    479
    Мне надо чтобы открывало все у меня, без перезагрузки. Кликни на надпись О нас, а потом на Разделы -> Карта области и ты увидишь лаг.
     
  7. Mr.Emm

    Mr.Emm Постоялец

    Регистр.:
    5 май 2008
    Сообщения:
    144
    Симпатии:
    107
    Во-первых, почему у тебя подключено сразу две разные версии jquery - удали старую!
    Во-вторых, не работает потому что javascript через load не подгрузишь, тут нужен $.getScript или что-то в этом роде.

    Добавлено через 46 минут
    PHP:
    // JavaScript Document
    $(document).ready(function() {

    var 
    loadfuncs = function(f) {

      if(
    == 'maps') {
            var 
    map = new YMaps.Map(YMaps.jQuery("#YMapsID-844")[0]);
            
    map.setCenter(new YMaps.GeoPoint(40.806744,47.699256), 7YMaps.MapType.MAP);
            
    map.addControl(new YMaps.Zoom());
            
    map.addControl(new YMaps.ToolBar());
            
    map.addControl(new YMaps.TypeControl());
            
            function 
    createObject (typepointstyledescription) {
                var 
    allowObjects = ["Placemark""Polyline""Polygon"],
                    
    index YMaps.jQuery.inArraytypeallowObjects),
                    
    constructor allowObjects[(index == -1) ? index];
                    
    description description || "";
                
                var 
    object = new YMaps[constructor](point, {stylestylehasBalloon : !!description});
                
    object.description description;
                
                return 
    object;
            }  
      
      } else if(
    == 'probki') {
      
           var 
    map = new YMaps.Map(YMaps.jQuery("#YMapsID-417")[0]);
            
    map.setCenter(new YMaps.GeoPoint(39.706738,47.256555), 11YMaps.MapType.MAP);
            
    map.addControl(new YMaps.Zoom());
            
    map.addControl(new YMaps.ToolBar());
            
    map.addControl(new YMaps.TypeControl());
            
            function 
    createObject (typepointstyledescription) {
                var 
    allowObjects = ["Placemark""Polyline""Polygon"],
                    
    index YMaps.jQuery.inArraytypeallowObjects),
                    
    constructor allowObjects[(index == -1) ? index];
                    
    description description || "";
                
                var 
    object = new YMaps[constructor](point, {stylestylehasBalloon : !!description});
                
    object.description description;
                
                return 
    object;
            }
      }

    }

          $(
    "ul.leftmenu li a").click(function() {
         
          var 
    filename = $(this).attr("id");
          
          $(
    "div.bigbord_block").load(filename ".html");
          
            if((/
    filename/).test('maps.probki')) {
             
             $.
    getScript("http://api-maps.yandex.ru/1.1/?key=AHzUHEwBAAAAqJvlVwIAGQF0YF9WsCJWKwxIwhN-FqsY7ZgAAAAAAAAAAABIsrcQ5bB_O7DwoXZ0Fra4wZ4Vsg==&wizard=constructor", function(){
                  
    loadfuncs(filename);
               });
               
             }
             return 
    false;
          });
                
    });
    на страницах maps и probki оставляешь только блок в который вставиться карта, скрипты от туда удаляешь. Код не тестировал, но по идее должно работать.

    в функции loadfuncs все можно сократить т.к. там только данные разные...
     
Статус темы:
Закрыта.