【问题标题】:get variable to url and navigate variable selected获取变量到 url 并导航选择的变量
【发布时间】:2015-11-25 16:37:15
【问题描述】:

谁能帮我写代码

我的页面是关于切换 iframe 的

当我点击视频 1 时,它有 data-str="p9zdCra9gCE"

它只会改变 class="load_video" 中 iframe 的 src 的结尾

所以我需要像这样... 当我点击视频 1 或视频 2 时,我应该在 url 上获得“p9zdCra9gCE”,使其类似于 page.php?p9zdCra9gCE

所以当有人导航到 page.php?p9zdCra9gCE 或 page.php?0_MfMUN_FNM 那么 data-str 应该在 iframe 上,而不是通过单击视频按钮进行切换。希望你们能理解,到目前为止,没有人帮助过我。

这是我在 plnkr http://plnkr.co/edit/IPY3GF7Poyv1URrk84FH?p=preview 上的完整代码

这是我的 php 代码

<?php

        $id = 1;
        foreach (glob('directory/*.php') as $file) {
            $file = str_replace('directory/', '', $file);
            $file = str_replace('.php', '', $file); ?>
            <div style="display:block;" class="video_link" data-str="<?php echo $file; ?>">Video <?php echo $id++ ?></div>
        <?php }

        ?>

这是我的 javascript 代码

<script>
    $(document).ready(function() {
        $(".frame_src").attr("data-src", "https://www.youtube.com/embed/p9zdCra9gCE");
        var t = "p9zdCra9gCE",
            e = $(".embed_code").attr("data-content");
        e = e.replace("[videoID]", t), $(".embed_code").html(e), $(".video_button").slideDown(), $(".video_link").click(function() {
            $(".reloadframe").show();
            var t = $(this).attr("data-str"),
                e = "https://www.youtube.com/embed/" + t + "",
                a = $(".embed_code").attr("data-content");
            a = a.replace("[videoID]", t), $(".embed_code").html(a), $(".frame_src").attr("src", e), clearInterval(interval), document.querySelector(".load_video").style.display = "none", $(".frame_src").show()
        })
    });
            </script>

【问题讨论】:

    标签: javascript php jquery iframe


    【解决方案1】:

    查看 jQuery 的 .click().on() 方法文档。您希望使用阻止默认点击操作(在这种情况下,您将阻止链接导航到新页面)并将其替换为使用所述链接更新 iframe。代码将如下所示:

    $(document).ready(function() {
        //bind listener to elements the are used to update the iframe
        $('.updateFrame').on('click', function(e) {
            e.preventDefault(); //stop normal click event
            $('.videoFrame').attr('src', $(this).data('src')); //update iframe src
        });
    });
    

    【讨论】:

    • 亲爱的,你做这个是为了什么?当我单击按钮时,我没有看到它从 data-str 到 url 获取该值以使其成为 page.php?QrMOu4GU3uU 或其他值。当我去 page.php?QrMOu4GU3uU 时,视频按钮必须已经切换,而不是点击视频按钮
    • 首先,转到page.php?QrMOu4GU3uU 之类的东西并不是一个好方法,因为您没有分配任何类型的实体$_GET 数组键。此外,在页面加载时分配 iframe 的 src 属性所需要做的就是使用$_GET 超全局。我的解决方案是针对您的问题“如何应用点击侦听器在 iframe 中切换我的视频?”因为这是被问到的。
    • 好的,但是在不更改我的代码的情况下可以使用吗?我的意思是我的代码它们的工作方式我希望它们像那样,我想做“点击监听器以在 iframe 中切换我的视频”广告你可以做到,我会很高兴。如您所见,您在 plnkr 上有完整的代码
    • 我的意思是,如果你可以通过添加 $_GET 数组键来为我制作它需要什么来制作它
    • 将 page.php?xxxxxxxxx 更改为 page.php?video=xxxxxxxxx 然后将 src 属性添加到 frame_src iframe,如下所示:&lt;?php echo (isset($_GET['video']) ? 'src="https://www.youtube.com/embed/' . $_GET['video'] . '"' : ''); ?&gt;
    猜你喜欢
    • 2015-12-14
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    • 2017-09-07
    • 2017-09-28
    • 1970-01-01
    • 2011-09-28
    相关资源
    最近更新 更多