繁体   English   中英

javascript,jQuery同时运行具有两个不同输入的单个函数

[英]javascript, jQuery running a single function with two different inputs at the same time

嘿,伙计们只是在搞弄一些事情,学习一些新的东西来打发时间,而现在我对javascript情有独钟,我遇到了一个问题。

所以问题是我下载了一个小型的jQuery幻灯片放映的东西,它是简单的淡入淡出的幻灯片放映(我将它分解成碎片,删除了我认为不必要的东西),而我试图让它同时运行两个独立的幻灯片放映时间。 我希望这些幻灯片的宽度和高度具有不同的尺寸,最好是过渡时间,而且我的问题是该功能只能运行一个幻灯片。

$(document).ready(function(){
    $('#slideshow').fadeSlideShow({
        width: 300,
        height: 343,
    });

有什么办法可以说将#slideshow更改为#slideshow1 ,然后让它与#slideshow同时在相同的代码上#slideshow 显然,我可以更改一些名称,并输入大量文本,但id更喜欢找到一种更整洁的方式。

我是新手,所以任何建议都将不胜感激

$(document).ready(function()
{
     $('#slideshow').fadeSlideShow({ width: 300, height: 343 });
     $('#slideshow1').fadeSlideShow({ width: 300, height: 343 });
});

假设插件可以使用多个元素:

  $('#slideshow', '#slideshow1').fadeSlideShow({
    width: 300,
    height: 343
  });

如果插件是为最佳实践而编写的,则上面的方法应该可以工作。 循环遍历选择器字符串数组也可以相同的方式工作。

  var slideshows = ['#slideshow', '#slideshow1', '#slideshow2'];
  $.each(slideshows, function(el, i) {
    $(el).fadeSlideShow({
      width: 300,
      height: 343
    });
  });

否则,如果div以逻辑顺序排列,则可以以编程方式构造选择器。

  var slideshowStart = 1;
  var slideshowEnd = 50;
  for(var i = slideshowStart; i <= slideshowEnd; i++) {
    $('#slideshow'+i).fadeSlideShow({
      width: 300,
      height: 343
    });
  }

另外,一个不错的轻量级图像幻灯片插件是jQuery.cycle。 它已经过充分测试,并且具有极高的可扩展性。

http://jquery.malsup.com/cycle/

由于#slideshow仅表示DOM元素ID,例如单个div或其他内容,您不能将其更改为#slideshow2并创建一个具有slideshow2 ID的附加div吗? 如果这不起作用,那么幻灯片代码的编写方式可能无法实现?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM