我有一个视频标题列表。它们是可点击的链接。它们按有序列表排列。
function showResults(results) {
var html = '';
html = "<ol>";
$.each(results, function(index,value) {
html += '<li><a data-video-type="https://www.youtube.com/embed/' + value.id.videoId + '?autoplay=1"><img src="' +value.snippet.thumbnails.medium.url + '">' + value.snippet.title + '</a>)</li>'; });
html += "</ol>";
$('#results').html(html);
});
我可以将videoChoice的id分配给ol,li或a。我得到了一个像这样的id标签:
"play number *val" : function(val) {
var test = document.getElementById('videoChoice');
test.click();
}
如果将id分配给li或a,我可以使用语音命令,视频将播放。问题是,此方法返回列表中的一个特定视频。所以我把我的id标签移到了ol。这将返回完整的有序列表。问题是我无法弄清楚如何按索引号选择列表元素。我知道如何通过索引号从数组中选择一个元素,但是我似乎需要一个不同的方法。
那么如何从有序列表中选择一个列表元素呢?
解
正如答案中所提到的,.eq()Jquery方法是一种很好的方法。我实现了该方法,但还必须通过添加&#39; a&#39;来指定它是一个链接。这使它可以点击。
"play number *val" : function(val) {
var $ol = $('#videoChoice');
var li = $ol.find('a','li').eq(val).click();
}
答案 0 :(得分:1)
我无法弄清楚如何按索引编号选择列表元素
如果这是您的问题,您可以使用jquery eq()方法轻松选择列表元素
例如:FIDDLE
var firstList = $('ul#id').find('li').eq(0);
答案 1 :(得分:0)
如果您尝试按索引进行选择,请查看以下内容:
https://api.jquery.com/eq-selector/
您可以使用eq选择器按索引进行选择,因此如果您尝试选择列表中的第三项,则选择器将如下所示:
var Selection = $('li:eq(2)');
为方便起见,JSFiddle。