【问题标题】:identifier starts immediately after numeric litera标识符在数字文字之后立即开始
【发布时间】:2012-02-12 02:03:42
【问题描述】:

我在我的网站上展示了几个视频,并在视频的 YoutubeID 之后生成代码。到现在为止,它可以正常运行,但是对于 ID 6BD2qnBozvE,我的脚本将无法运行。

我的代码

function onYouTubePlayerReady(playerId) {

    e3fqE01YYWs = document.getElementById('e3fqE01YYWs');
      setTimeout(function(){
        e3fqE01YYWs.setVolume(100);
        e3fqE01YYWs.playVideo();
      }, 750);

    6BD2qnBozvE = document.getElementById('6BD2qnBozvE');
      setTimeout(function(){
        6BD2qnBozvE.setVolume(53);
        6BD2qnBozvE.playVideo();
      }, 750);
        }

Firebug 中的错误消息

标识符在数字文字之后立即开始 [Break On This 错误]

6BD2qnBozvE = document.getElementById('6BD2qnBozvE');

为什么会发生这种情况,我该如何解决?

编辑:Jeremy Banks 解释了原因,但我仍然不知道如何解决我的问题。

这就是我生成 Javascript 代码的方式:

function onYouTubePlayerReady(playerId) {
<?php
foreach($projectMusicUn as $music => $volume){
?> 
<?php echo $music; ?> = document.getElementById('<?php echo $music; ?>');
setTimeout(function(){
    <?php echo $music; ?>.setVolume(<?php echo $volume; ?>);
<?php echo $music; ?>.playVideo();
  }, 750);
<?php
} //End of foreach($projectMusic as $music)
?>
}

【问题讨论】:

    标签: php javascript youtube youtube-api youtube-javascript-api


    【解决方案1】:

    您正在尝试分配给名为6BD2qnBozvE 的变量。这是不允许的; JavaScript 中的变量名(标识符)必须以字母、下划线或$ 开头。

    只需将其重命名为video_6BD2qnBozvE。当您使用它时,您可能应该在定义之前添加 var 关键字,这样您就不会创建全局变量。

        var video_6BD2qnBozvE = document.getElementById('6BD2qnBozvE');
    

    每次在生成的源代码中将其用作变量时,添加类似video_ 的前缀:

    function onYouTubePlayerReady(playerId) {
        <?php
        foreach($projectMusicUn as $music => $volume){
            ?> 
            var video_<?php echo $music; ?> = document.getElementById('<?php echo $music; ?>');
            setTimeout(function(){
                video_<?php echo $music; ?>.setVolume(<?php echo $volume; ?>);
                video_<?php echo $music; ?>.playVideo();
            }, 750);
            <?php
        } //End of foreach($projectMusic as $music)
        ?>
    }
    

    【讨论】:

    • 这解释了为什么......仍然不知道如何解决它并用关于如何生成 Javascript 的代码更新了我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多