【问题标题】:How to output not as plain text如何输出不是纯文本
【发布时间】:2013-08-12 18:55:28
【问题描述】:

我已经安装了一个名为 AllVideos Pluginjoomla 插件。我所要做的就是在我的网站的某处放置一些像{youtube}h2TLC0zGwKE{/youtube} 这样的标签,然后我的视频就会显示出来!

在这一点上我需要你的帮助...在我的 php 代码中,我添加了一个 hidden textbox 来保存视频的源代码和一个 div 当我使用 javascript 单击 图像 时将显示视频。

PHP部分代码

<input id="video_url" name="video_url" type="hidden" value="" />
<div id="video"></div>

JAVASCRIPT 代码的一部分

var Open      = String.fromCharCode(123,121,111,117,116,117,98,101,125); // {youtube}
var Close     = String.fromCharCode(123,47,121,111,117,116,117,98,101,125); // {/youtube}
var video     = document.getElementById("video");
var video_url = document.getElementById("video_url");
...
video.innerHTML =  Open+video_url.value+Close;

问题在于 youtube 标签显示为纯文本!看看这张图片:

知道如何让它发挥作用吗? 提前谢谢!

【问题讨论】:

    标签: php javascript joomla joomla1.5 joomla-extensions


    【解决方案1】:

    PHP 在 JavaScript 之前运行,这就是客户端-服务器模型的工作方式。您必须在 JavaScript 中重新创建相同的功能,这相当简单。这是一个例子:

    function youtubeVideo(str){
      return str.replace(
        /\{youtube\}(\w+)\{\/youtube\}/g,
        '<iframe width="420" height="315"\
        src="//www.youtube.com/embed/$1"\
        frameborder="0" allowfullscreen></iframe>'
      );
    }
    
    youtubeVideo('{youtube}HzeZhCt5PVA{/youtube}');
    

    这应该可以帮到你。

    演示: http://jsfiddle.net/TpRw3/

    【讨论】:

      猜你喜欢
      • 2013-06-21
      • 1970-01-01
      • 1970-01-01
      • 2022-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多