Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检查活动转盘项目是否具有值为1的属性_Javascript_Jquery_Twitter Bootstrap - Fatal编程技术网

Javascript 检查活动转盘项目是否具有值为1的属性

Javascript 检查活动转盘项目是否具有值为1的属性,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,我正在使用boostrap旋转木马: <div class="carousel-item slide" data-llp-is-question="0"></div> <div class="carousel-item slide" data-llp-is-question="0"></div> <div class="carousel-item slide" data-llp-is-question="0"></div>

我正在使用boostrap旋转木马:

<div class="carousel-item slide" data-llp-is-question="0"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
<!-- Two Questions together -->
<div class="carousel-item quest" data-llp-is-question="1"></div>
<div class="carousel-item quest" data-llp-is-question="1"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
<div class="carousel-item quest" data-llp-is-question="1"></div>
<div class="carousel-item slide" data-llp-is-question="0"></div>
我在这里调用
Document.Load
,也在这里调用:

$('#moduleSlideContainer').on('slide.bs.carousel','', checkIfQuestionSlide);
问题是,我总是得到的结果,该项目不是一个问题


请,有人能指出我在哪里是一个白痴,并告诉我正确的道路;)

由于在任何给定时间至少有一张幻灯片可见(这就是
is
的工作原理),因此以下内容将始终返回true:

这将始终返回0(第一个匹配项的数据):

这解释了为什么每次都得到相同的结果。正确的解决方案是使用幻灯片事件:

$("#moduleSlideContainer").on("slide.bs.carousel", function(e) {
  var $slide = $(e.relatedTarget);
  if ($slide.data("llp-is-question")) {
    console.log(e.relatedTarget, "is a question");
  } else {
    console.log(e.relatedTarget, "is not question");
  }
});

由于在任何给定时间至少有一张幻灯片可见(这就是
is
的工作原理),因此以下内容将始终返回true:

这将始终返回0(第一个匹配项的数据):

这解释了为什么每次都得到相同的结果。正确的解决方案是使用幻灯片事件:

$("#moduleSlideContainer").on("slide.bs.carousel", function(e) {
  var $slide = $(e.relatedTarget);
  if ($slide.data("llp-is-question")) {
    console.log(e.relatedTarget, "is a question");
  } else {
    console.log(e.relatedTarget, "is not question");
  }
});

引导转盘应该有一个名为relatedTarget的属性,您可以使用它(取决于您使用的版本)


relatedTarget是即将进入视图的元素。希望这有帮助。

引导转盘应该有一个名为relatedTarget的属性,您可以使用它(取决于您使用的版本)


relatedTarget是即将进入视图的元素。希望这能有所帮助。

那太好了,谢谢,不过,这并没有回答第一个问题,如果有两个人在一起,你能帮上忙吗?两个人在一起到底是什么意思?你有两张幻灯片吗?或者一次可以看到两张幻灯片?我已经更新了问题中的HTML。有两个项目被指定,并且问题彼此相邻,第一个没有被提及,但是第二个被提及。这非常感谢,但是,如果有两个问题在一起,它不会提及第一个问题。你能帮忙吗?两个在一起到底是什么意思?你有两张幻灯片吗?或者一次可以看到两张幻灯片?我已经更新了问题中的HTML。有两个项目被指定,并且问题彼此相邻,第一个项目没有被拾取,但是第二个被拾取。
$("#moduleSlideContainer .carousel-inner .carousel-item").data('llp-is-question')
$("#moduleSlideContainer").on("slide.bs.carousel", function(e) {
  var $slide = $(e.relatedTarget);
  if ($slide.data("llp-is-question")) {
    console.log(e.relatedTarget, "is a question");
  } else {
    console.log(e.relatedTarget, "is not question");
  }
});
$(".carousel").on('slide.bs.carousel', (e) ->
    console.log(e.relatedTarget);
)