【发布时间】:2010-01-28 20:18:39
【问题描述】:
轻松搞定
由于我最近一直在学习 jQuery,所以我决定编写自己的模态窗口来播放视频,当点击视频缩略图时。一切正常,但我只是想知道如何将它变成一个插件,这样我就可以在具有不同参数等的不同页面上使用它。我阅读了文档和一些教程,但我似乎无法让它工作。我的基本代码如下:
<script type="text/javascript">
var $j = jQuery.noConflict();
$j(document).ready(function(){
// Add our click OPEN event
$j("a.video_link").click(function (e) {
e.preventDefault();
// Add our overlay div
$j('body').append('<div id="overlay" />');
// Fade in overlay
$j('#overlay').css({"display":"block","opacity":"0"}).animate({"opacity":"0.2"}, 300),
// Animate our modal window into view
$j('#video').css({"top":"43%"}).css({"opacity":"0"}).show().animate({"top": "50%", "opacity": "1"}, 550),
// Add our close image
$j('#video').append('<div id="modal-vid-close" title="Close window" />');
// Add our click CLOSE event
$j('#overlay, #modal-vid-close').click(function () {
//Animate our modal window out of view
$j('#video').animate({"top": "55%", "opacity": "0"}, 350).fadeOut(200),
// Fade out and remove our overlay
$j('#overlay').fadeOut(200, function () { $j(this).remove(); $j('#modal-vid-close').remove()} )
});
});
});
我想把它变成一个插件,这样我就可以在不同的页面上使用它,只需指定“触发”链接,以及要在窗口中显示的 div id(它已经加载到页面上,但隐藏)。像这样的东西,添加到每个页面的文档加载中:
var trigger = $j('.video_container a');
var modalcontent = $j('#video');
任何帮助,或指向好的教程,非常感谢!
【问题讨论】:
标签: jquery jquery-plugins