Jump to content

Есть ли такой скрипт в паблике?


Recommended Posts

Вообщем есть один сайт и на нём существует раздел в дальнейшем администратор добавляет в любой материал сайта [card:23] (что-то на подобии этого) и получается вот это в описании ссылки (при наведении на ссылку появляется картинка карты). Подскажите где взять такой же скрипт.

Link to post
Share on other sites

Подскажите где взять такой же скрипт.

у них же и взять

 

$(document).ready(function()
{
    //Текущий url
    var current_section = $('[data-page-current-section]').attr('data-page-current-section');
    
    /** Загрузка и показ изображения */
    function load_and_show_image(image_id)
    {
        //Размеры окна
        var current_window_width = $(window).width();
        var current_window_height = $(window).height();
        
        //Если нет затемнения - затемняем
        if($('.sweetbox-background').attr('class') == undefined)
        {
            $('body').append('<div class="sweetbox-background"></div>');
        }
        
        //Запрашиваем картинку
        $.ajax({
            url: base_url + 'gallery/viewAjax/' + image_id,
            type: 'GET',
            success: function(data)
            {
                //Добавляем блок с картинкой
                $('body').append(data);
                
                //Ищем блок и сразу его прячем
                var current_block = $('.sweetbox-wrapper').fadeOut(0);
                
                //Добавляем лоадбар
                current_block.find('#sweetbox-image').hide(0).before('<img src="' + base_url + 'img/icons/loadbar.gif" width="40px" id="sweetbox-loadbar" />');
                
                //Позицианируем блок
                var current_block_position_top = $('body').scrollTop() + 30;
                current_block.css({'top': current_block_position_top + 'px'});
                
                //Загружаем комментарии
                comments_load();
                
                //Показываем блок с картинкой
                current_block.fadeIn(200);
                
                //Вешаем собитие для формирования размера
                current_block.find('#sweetbox-image').hide(0).load(function()
                {
                    var current_block_width = current_block.width();
                    var current_block_height = current_block.height();
                    
                    //Размер окна
                    var current_block_width_max = current_window_width - (current_window_width / 6);
                    var current_block_height_max = current_window_height - (current_window_height / 4);
                    
                    //Считаем размер окна
                    $(this).css({'maxWidth': (current_block_width_max - 120) + 'px', 'maxHeight': current_block_height_max + 'px'});
                    current_block.css({'width': current_block_width_max + 'px'});
                    
                    //Записываем новые размеры
                    current_block_width = current_block.width();
                    current_block_height = current_block.height();
                    
                    //Отспуп от левого края
                    var current_block_margin = (current_window_width / 2) - (current_block_width / 2);
                    
                    current_block.css({'marginLeft':-current_block_width/2 + 'px'});
                    
                    $(this).fadeIn(200);
                    
                    //Удаляем лоадбар
                    $('#sweetbox-loadbar').remove();
                });
                
                //Записываем картинку в историю браузера
                history.pushState('', 'Hearthstone картинка', '/gallery/image/' + image_id + '/');
            }
        });
    }
    
    //Если уже существует наш бокс, то перемещаем его
    $('#gallery-image-ajax').each(function()
    {
        var current_object = $(this);
        var current_id = current_object.attr('data-image-id');
        
        load_and_show_image(current_id);
    });
    
    /** Всплывающее окно с картинкой */
    $('a[class *= "sweetbox"]').click(function()
    {
        var current_object = $(this);
        var current_id = current_object.attr('data-image-id');
        
        //Затемняем фон
        $('body').append('<div class="sweetbox-background"></div>');
        
        //Загружаем картинку
        load_and_show_image(current_id);
        
        return false;
    });
    
    /** Удаление блока и картинкой */
    $('[class=sweetbox-background], [class=sweetbox-wrapper] [data-close]').live('click', function()
    {
        //Убераем иконку загрузки
        controlLoadIcon('destroy');
        
        //Удаляем блоки
        $('[class=sweetbox-wrapper], [class=sweetbox-background]').remove();
        
        //Записываем закрытие в историю браузера
        history.pushState('', 'Галерея Hearthstone', '/' + current_section + '/');
    });
    
    
    /** Переключатели изображения */
    $('.sweetbox-wrapper [data-navigation]').live('click', function()
    {
        //Текущая картинка
        var current_id = $(this).attr('data-id');
        var current_type = $(this).attr('data-navigation');
        var current_image = $('[data-image-id=' + current_id + ']');
        
        //Ищем соседа
        if(current_type == 'next') var curren_new_image = current_image.next().attr('data-image-id');
        else var curren_new_image = current_image.prev().attr('data-image-id');
        
        if(curren_new_image == undefined) return;
        
        //Удаляем старый блок
        $('.sweetbox-wrapper').remove();
        
        //Получаем данные о следующем озображении
        load_and_show_image(curren_new_image);
    });
    
    
    /** Слайдер тегов */
    $('#gallery-tags .title').click(function()
    {
        $(this).next().slideToggle('fast');
    });
    
    /** Записываем теги, которые выбрали */
    $('#gallery-tags .single').click(function()
    {
        var current_object = $(this);
        var current_id = current_object.attr('data-id');
        
        //Активировал ли уже данный тег пользователь
        if(current_object.hasClass('active'))
        {
            //Убераем класс
            current_object.removeClass('active');
            
            //Удаляем интуп
            $('#gallery-tags .selected input[value=' + current_id + ']').remove();
            
            return;
        }
        
        //Добавляем класс
        current_object.addClass('active');
        
        //Добавляем инпут в список
        $('#gallery-tags .selected').append('<input type="hidden" value="' + current_id + '" name="tags[]" />');
    });
    
    
    /** Перенаправляем пользоватя на новую страницу с учетом тегов */
    $('#gallery-tags input[type=submit]').click(function()
    {
        var current_object = $(this);
        var current_parent = current_object.parents('#gallery-tags');
        
        //Формируем строку тегов
        var current_tags = '';
        
        current_parent.find('.selected input').each(function()
        {
            if(current_tags == '') current_tags = $(this).val();
            else current_tags += '-' + $(this).val();
        });
        
        //Формируем сортировку
        var current_sort = current_parent.find('select[name=sort]').val();
        
        //Формируем тип сортировки
        var current_sort_type = current_parent.find('select[name=sort-type]').val();
        
        //Кол-во записей на странице
        var current_per_page = current_parent.find('select[name=per-page]').val();
        
        //Формируем строку url
        var current_url_formed = base_url + 'gallery/?tags=' + current_tags + '&sort=' + current_sort + '&sort-type=' + current_sort_type + '&per-page=' + current_per_page;
        
        //alert(current_url_formed);
        document.location.href = current_url_formed;
    });
});

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...