小编lin*_*ode的帖子

使用 setTimeout 循环播放视频

我想循环播放视频。出于某种原因,我不想在结束的事件中更改视频 src。所以我为每个视频循环创建了视频元素。此外,我在数组中有视频 src 和持续时间。

这是我的想法:只能看到当前正在播放的视频标签。其他人将被隐藏。我想使用 setTimeout 函数,而不是使用结束事件。视频的持续时间将是延迟参数。

但他们都在一起玩。我不能让他们按顺序播放。

这是我到目前为止所做的:

videoArray = [
    {"video":video1.mp4, "duration": 5},
    {"video":video2.mp4, "duration": 7},
    {"video":video3.mp4, "duration": 9},
    {"video":video4.mp4, "duration": 10},
]

for (var j = 0; j < videoArray.length; j++){
    var video = document.createElement("video");
    video.src=videoArray[j];
    video.id="video-"+j;
    video.preload = "metadata";
    video.type="video/mp4";
    video.autoplay = true; 
    video.style.display="none";
    document.body.appendChild(video); 
}

for (var count = 0; count < videoArray.length; count++) {
    (function(num){
        setTimeout(function() {
            videoArray[num].video.style.display="block";
            videoArray[num].video.play();
        }, 1000 * videoArray[num].duration);
        videoArray[num].video.style.display="none";
    })(count);
}
Run Code Online (Sandbox Code Playgroud)

html javascript settimeout html5-video

4
推荐指数
1
解决办法
950
查看次数

拖放并计算宽度

我想在拖放应用程序中计算并选择拖放区域.

我想做什么:

  1. 当我将框拖到droppable div的顶部或底部时,宽度必须为100%
  2. 当我将盒子拖到另一个盒子附近时(如果连续一个盒子),它们的宽度必须是50% - 50%
  3. 如果一个拖动框并且更改了哪个框已经在包装中,则必须再次计算它们.

这是我的示例代码

$(".box").draggable({
    snap: '#droppable',
    snapMode: 'outer',
    revert: "invalid",
    cursor: "move",
    helper: "clone"
    //connectToSortable: "#droppable"
});

$("#wrapper").droppable({
    drop: function(event, ui) {
        var dropped = $(ui.draggable).clone();
        var droppedOn = $(this);
        $(dropped).detach().css({
            top: 0,
            left: 0
        }).appendTo(droppedOn);
        $(this).addClass("ui-state.highlight").find("p").html("");
    }
});
Run Code Online (Sandbox Code Playgroud)

你能告诉我怎么做的吗?

谢谢

javascript sorting jquery drag-and-drop

0
推荐指数
1
解决办法
293
查看次数