Предположим, у меня есть:jQuery: Как создать плагин, который можно включить и отключить?
1) Кнопка запуска.
2) Кнопка остановки.
3) removePluginBtn
4) 2 DIVS.
Я придумал основной jQuery
плагин, как:
;(function(myPlugIn){
myPlugIn.fn.styleTheDivAndAnimate = function(){
$(this).css({background:"red",border:"10px solid black", padding:"30px"}).animate({marginLeft:"200px"},5000)
}
})(jQuery);
$(function(){
$('#startBtn').on('click',function(){
$('#myDiv').styleTheDivAndAnimate()
})
})
HTML:
<div id="main" style="float:left;">
<div id="myDiv" style="background:green; border:5px solid blue; padding:10px;">
</div>
</div>
<button id="startBtn">Start</button>
<button id="stopBtn">Stop</button>
<button id="removePluginBtn">Unbind Plugin</button>
Теперь, когда я нажимаю startBtn
, то myDiv
получает связала styleTheDivAndAnimate
плагин.
Однако то, что я хочу, когда я нажимаю stopBtn
, myDiv
должен просто Возвращайтесь в исходное состояние и когда startBtn
нажата снова, он будет обязан вернуться к styleTheDivAndAnimate
, как ожидалось ...
НО ... Когда я нажимаю removePluginBtn
... myDiv
больше не должен связываться с плагином styleTheDivAndAnimate
. даже когда я снова нажимаю startBtn
, НИКАКАЯ ВЕЩЬ ДОЛЖНА СЛУЧИТЬСЯ, потому что плагин был удален из него ... (что-то в этом роде).
Как это может быть достигнуто?
Thanx заранее!
Plaese ПРОЧТИТЕ FIDDLE НАЧАТЬ:http://jsfiddle.net/97AWD/
Что делать, если я все еще хотел поведения на некоторых других элементах ... ЗА ИСКЛЮЧЕНИЕМ этого конкретного ?. .. Я предполагаю, что этот способ может отключить плагин повсеместно ..., который может вызвать ужас. –
См. Обновленный ответ – Barmar
Уверенный выглядит великолепно, но простите за мой LayManess cz. Я не могу понять, как применить это ... Не могли бы вы показать его практически на скрипке? ... i '100% ПРИЗНАВАТЬ .. THX уже! –