我有一个为我的页面运行幻灯片的脚本。我正在尝试使用.delegate()
插入幻灯片中显示的一组新图像,包括缩略图。我正在使用.load()
函数加载外部<div>
以替换活动页面中的某些HTML。我还有带ID的按钮,(#kick1
,#kwick2
等),用于确定加载的幻灯片组。
jQuery("#kwick2").click(function () {
jQuery("body").delegate('#slideshow', 'click', function() {
jQuery('#slideshow').load('/design.html #design');
)};
)};
非常确定语法是完全错误的。有人能帮助我吗?
我创建的#slideshow
div
是直接包含其他div
的内容
受幻灯片剧本的影响。在div
ID #slideshow
内
<div class="main_image">
,<div class="desc">
和<div class="image_thumb">
。
单击KWICK按钮时会直接替换它们,它们都非常自我解释,图像拇指有图像链接的无序列表。
答案 0 :(得分:1)
每次单击按钮时都不应重新进行转发。你做错了。
相反,你应该拥有的是:
var foobar = (function () {
var func , mod1 , mod2;
mod1 = function () {
/* do something in state 1 */
};
mod2 = function () {
/* do something in state 2 */
};
return {
state: function (e) {
switch (this.id){
case 'kwick1':
func = mod1;
break;
case 'kwick2':
func = mod2;
break;
}
},
callback: function (e) {
func.call();
}
}
})();
jQuery("#kwick1").click( foobar.state ); // and you really should delegate this
jQuery("#kwick2").click( foobar.state );
jQuery("body").delegate('#slideshow','click', foobar.callback);
或类似的东西..
不,我没有测试此代码。它是为了解释这个概念而写的,而不是用勺子喂人。
答案 1 :(得分:0)
不确定我是否理解了这个问题,无论如何你必须指定你委托的事件
jQuery("#kwick2").click(function () {
jQuery("body").delegate('#slideshow',"click", function(){
jQuery('#slideshow').load('/design.html #design');
)};
)};