0
var item = $(this).attr('class');

switch (item) {
    case 'menu-visie active':
        soundManager.play('soundLaag1');
        break;

有没有办法,我可以删除案例中的活动。变量的类是菜单可见的。但有时课程是菜单可见的。但是当课程是菜单可见时。脚本不工作。

如何设置 switch 语句。那个语句只看menu-visie 类。现在类必须完全相同

4

4 回答 4

4

您应该使用 jQuery 来处理这些类,而不是手动。例如:

if ($(this).hasClass('menu-visie')) {
  soundManager.play('soundLaag1');
}

更新 如果你有很多类,我会创建一个对象来存储它们。例如:

var self = this,
    sounds = {
      'menu-visie':'soundLaag1',
      'menu-visie2':'soundLaag2'
    };

$.each(sounds, function(i,n) {
  if (self.hasClass(i)) {
    soundManager.play(n);
  }
});
于 2013-02-26T18:11:04.380 回答
1

你可以这样做:

if($(this).hasClass('menu-visie')) {
    soundManager.play('soundLaag1');
}
于 2013-02-26T18:11:47.007 回答
1

我会这样做:

if( $(this).hasClass('menu-visie') ) {
    soundManager.play('soundLaag1');
} else {
    //something else.
}
于 2013-02-26T18:12:07.817 回答
0

正如大多数人所提到的,您应该使用 Jquery 方法“hasClass”。如果您仍然想保留您的开关(如果您有很多语句),您可以这样编写代码:

switch (true) {
    case $(this).hasClass('menu-visie'):
        soundManager.play('soundLaag1');
        break;
于 2013-02-26T18:15:21.040 回答