Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 19.04.2015, 22:50
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,114

Moloch,
для медитации - дальнейшее расширение плагина и его новые возможности )))
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8" />
<style type="text/css">
</style>
<script src="https://code.jquery.com/jquery-latest.js"></script>

<script type="text/javascript">
(function($) {

    var defaults = {
        'animate': true,
        'css': true,
        'duration': 3000, //продолжительность выполнения анимации в ms
        'easing': 'swing', //изменение скорости анимации
        'background_color': 'green'
    };

    $.fn.inOut = function(opt) {

        opt = $.extend({}, defaults, opt);

        return this.each(function(index, self) {
            var elem = $(self);
            opt.animate && elem.animate({
                'height': 'toggle',
                'opacity': 'toggle'
            }, {
                'duration': opt.duration,
                'easing': opt.easing
            })
            opt.css && elem.css('background-color', opt.background_color);
        })
    };

    $.inOut = function(el, opt) {
        $(el).inOut(opt)
    };

    $.inOut.setDefaults = function(setNew) {
        defaults = $.extend({}, defaults, setNew)
    }

})(jQuery);

jQuery(function($) {
    function RandColor() {
        var r = Math.floor(Math.random() * (256));
        var g = Math.floor(Math.random() * (256));
        var b = Math.floor(Math.random() * (256));
        var rgb = 'rgb(' + r + ',' + g + ',' + b + ')';
        return rgb;
    }
    $('button').eq(0).on('click', function() {
        $('.container').inOut({
            'duration': 1500,
            background_color: 'pink'
        });
    });
    $('button').eq(1).on('click', function() {
        $('.container').inOut({
            'duration': 1500
        });
    });
    $('button').eq(2).on('click', function() {
        $.inOut('.container');
    });
    $('button').eq(3).on('click', function() {
        var color = RandColor();
        $.inOut.setDefaults({
            background_color: color
        });
        $.inOut('button:gt()', {
            background_color: color,
            animate: false
        })
        $.inOut('.container');
    });
});
</script>
  <title></title>
</head>
<body>
<div class="container">
	<h2>Какой-то текст</h2>
	<p>
		Неспроста свинцовый сосуд мгновенно открывает квазиупругую колбу. Карусель быстра и кратковременна. Часто бывает, что ядерная лапка груба и продуманна. Очевидно, феноменальная шестерня брезентового комплекта бережно увеличивает тайную лампу. Изящное значение резко и метастабильно. Платиновая инерция перегоревшего изолятора образовывает разделение. Свет преднамерен и замысловат. Шланг предумышленен. Деревянное открытие периодично. Базальтовый проектировщик груб. Замкнутый болт наполняет шип. Нагруженность эпизодична и кратковременна.
	</p>
</div>

<p><button>Нажми меня всегда pink</button></p>
<p><button>Нажми меня defaults green $('.container').inOut()</button></p>
<p><button>Нажми меня defaults green $.inOut('.container')</button></p>
<p><button>Изменить цвет по умолчанию</button></p>
</body>
</html>

Последний раз редактировалось рони, 21.05.2019 в 00:07.
Ответить с цитированием
  #12 (permalink)  
Старый 20.04.2015, 23:16
Аспирант
Отправить личное сообщение для Moloch Посмотреть профиль Найти все сообщения от Moloch
 
Регистрация: 29.10.2013
Сообщений: 94

спасиибо ! буду разбираться =)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
setInterval внутри плагина giv13 Элементы интерфейса 16 16.10.2014 04:58
PHP - Разработка скриптов и CMS. Программирование сайтов f.Michail Работа 16 28.01.2014 08:46
public метод для плагина Ichigeki jQuery 1 16.02.2012 19:07
разработка плагина для flowplayer lamocomp Работа 0 05.05.2011 12:48
Внутреннее состояние плагина alexander2 jQuery 10 01.04.2010 12:55