我有一个具有特定ID的div,例如:id="1"
我在课程的不同部分有另一个div,例如:class="1"
。
我使用以下jQuery来触发我的函数,这应该就像onClick on ID div一样,动作另一个具有相同ID的div有一个类。
$('#2').on('click', function(ev) {
$(".video, .2")[0].src += "&autoplay=1";
ev.preventDefault();
});
完美无缺。但是,我想让这个功能动态化。怎么样?
答案 0 :(得分:3)
您可以使用this.id
获取被点击元素的ID,并将其连接到选择器字符串。在这种情况下我也会使用attr("src", ...)
来防止在页面中没有匹配元素的情况下出现JS错误(或者如果你仍然喜欢vanilla JS则检查这个条件)。
$('button[id]').on('click', function(ev) {
var videoEl = $(".video ." + this.id);
videoEl.attr("src", videoEl.attr("src") + "&autoplay=1");
ev.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="video"><video class="2" src="video.mp4?"></video></div>
<button id="2">autoplay video</button>
答案 1 :(得分:0)
$(document.body).on('click', 'HERE_A_SELECTOR_FOR_ALL_THE_ELEMENTS_WITH_IDn', function(ev) {
$(".video ." + ev.target.id)[0].src += "&autoplay=1";
ev.preventDefault();
});