如何找到当前滑块是bx滑块中的图像或视频。
如果是视频,则视频必须重新加载,如果它是图像,则不重新加载。 但我正在使用,当我转到下一个滑块时,图像和视频都被重新加载。
的javascript:
element.all(by.repeater('col in colContainer.renderedColumns track by col.uid').column('Entity'))
.getText()
.then(console.log);
答案 0 :(得分:2)
使用$(ELE).prop('tagName')
获取元素'tagName。
<video>
有tagName VIDEO
,而<img>
有tagName IMG
。所以你可以根据它做不同的行动。
或使用.is('video')
检查目标元素是否为视频,因为您只想重新加载video
。
所以你可以写成:
$(document).ready(function(){
$(".bxslider").bxSlider({
onSlideNext: function() {
var $target = $("#frameid");
// Another way
// if ($target.prop('tagName') === 'VIDEO') {
if ($target.is('video')) {
var iframe = $target.attr('src');
$target.attr('src', iframe);
}
}
});
});
P.S:如果你只想让video
从头开始玩,我建议使用
// Set video to start.
video.currentTime = 0;
// If the video has autoplay requirement.
video.play();
由于这不会再次加载视频,只是将视频设置为其起点,因此重新加载视频不会产生额外的流量。
段:
// TagName
console.log($('#im').prop('tagName'));
console.log($('#vi').prop('tagName'));
// .Is
console.log($('#im').is('video'));
console.log($('#vi').is('video'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<img id="im"/>
<video id="vi"></video>