-1

我有这个问题,我需要获取 href 的值并将其传递给按钮。

这是 jQuery 的正确格式吗?

$(function() {
    var getValue = $('#theLink').getAttributeNode('onclick').value;
    $('.yt_holder').live('click', '.videoThumb4', function(){ 
    $(".videoThumb4").ytplaylist({
        holderId: 'ytvideo4',
        html5: true,
        playerWidth: '520',
        autoPlay: false,
        sliding: false,
        listsliding: true,
        social: true,
        autoHide: false,
        playfirst: 0,
        playOnLoad: false,
        modestbranding: true,
        showInfo: false
    });
    });
});

该按钮正在工作,但它只播放他列表中的第一个视频。该网站的链接在这里http://cocopop12.site11.com/search/index.php

现在按钮是这个。

<input class="videoThumb4" onClick="http://www.youtube.com/watch?v=' . $yValue['videoid'] . '" type="button" name="previewSel" value="Preview" id="previewbut" />

那是对的吗?我需要做一个 onclick http://www....blabla 吗?

<a href>我喜欢做一个按钮就是这个。

<?php
echo '
<a class="videoThumb4" href="http://www.youtube.com/watch?v=' . $yValue['videoid'] . '" id="link">
' . $yValue['description'] . '
</a>
';
?>

我如何将 .each 用于按钮 {Preview}?我怎样才能将值放在按钮中,就像 - 当我单击此 href 时它会自动播放视频?但它只播放第一个视频而不是第二个视频的按钮。我想让它像一个按钮。

感谢您的时间。

4

2 回答 2

0

我已经检查了您链接到的页面。您所要做的就是获取第三个兄弟(事物是 0-indexed 所以我们使用 2),然后在其上执行 click 事件:

$('.videoThumb4').click(function(){ 
    $(this).siblings()[2].click();
});
于 2012-07-08T07:37:03.147 回答
0

因此,如果我正确理解了您的问题,您希望在单击嵌套锚链接时让“预览”按钮跟随嵌套的锚链接。您不能只通过设置onclick属性来执行此操作,因为这指定了在引发事件时要运行的脚本——而不是要遵循的链接。

如果a链接仍然存在,您可以让按钮在单击a链接时触发对链接的单击(您已经有a链接单击的处理程序)。

首先,去掉onClick="..."按钮中的。

然后,添加以下 javascript 代码来触发链接点击。

$('.yt_holder').on('click', '.videoThumb4', function(e){
    e.preventDefault();
    if($(e.target).is('input[type="button"]')){
        $(this).siblings("a.videoThumb4").first().click();
    }
}

这将绑定到所有.videoThumb4元素的 'click' 事件(当前在文档中或将来加载),检查它们是否是 html 按钮,然后触发点击下面相应的锚链接(由您的代码处理问题)。注意.live()已弃用,您应该使用.on()所示的类似功能。


更新:您的新代码应如下所示

$(function() {
    $('.yt_holder').on('click', 'a.videoThumb4', function(e){
        $('.videoThumb4').ytplaylist({
            holderId: 'ytvideo4',
            html5: true,
            playerWidth: '520',
            autoPlay: false,
            sliding: false,
            listsliding: true,
            social: true,
            autoHide: false,
            playfirst: 0,
            playOnLoad: false,
            modestbranding: true,
            showInfo: false
        });
    });
    $('.yt_holder').on('click', 'input.videoThumb4', function(e){
        e.preventDefault();
        $(this).siblings("a.videoThumb4").first().click();
    });
​});​
于 2012-07-08T09:11:33.393 回答