在JS / Jquery函数的帮助下,通过URL加载YouTube视频

时间:2012-07-10 22:20:33

标签: javascript jquery video youtube

我正在尝试使用JS功能加载youtube视频。目的是让用户只需将youtube视频URL复制并粘贴到输入字段中,然后让我的JS代码处理加载部分。不幸的是我不确定为什么js代码没有加载anyvideo? JS FIDDLE

JS:

<script>
       $(document).ready(function(){
        var last_cnad_text_1 = '';
        var options_cnad_text_1 = {
        embedMethod:'fill',
        maxWidth:320,
        maxHeight: 320
        };
        function loadVideo()
        {
        val = $('#cnad_text_1').val();
        if ( val != '' && val != last_cnad_text_1 )
        {
        last_cnad_text_1 = val;
        $("#embed_cnad_text_1").oembed(val,options_cnad_text_1);
        }
        }
        $(function(){
        $('#cnad_text_1').keydown(loadVideo());
        $('#cnad_text_1').click(loadVideo());
        $('#cnad_text_1').change(loadVideo());
        });
        });
​</script>

HTML:

<html>

<div class="col1">Insert a youtube video Link</div>
   <div class="col2">
   <input id="cnad_text_1" type="text" name="cnad[text_1]">
   <div id="embed_cnad_text_1">
   <iframe></iframe>
    </div>
</div>​

</html>

3 个答案:

答案 0 :(得分:1)

$('#cnad_text_1').keydown(loadVideo());错了。您正在立即调用该函数,而不是将其指定为事件的回调。删除(),它应该有效:

$('#cnad_text_1').keydown(loadVideo);
$('#cnad_text_1').click(loadVideo);
$('#cnad_text_1').change(loadVideo);

实际上你可以更加浓缩它:

$('#cnad_text_1').on('keydown click change', loadVideo);

答案 1 :(得分:0)

我认为你最好使用'swfobject'为你做嵌入。您可以使用jquery简单地从文本框中提取值。

答案 2 :(得分:0)

jsfiddle不允许在演示中使用iframe,因此无法正常工作。