簡體   English   中英

稍后在帶有 src 的腳本標記中訪問的 Javascript 全局范圍變量

[英]Javascript global scope variables accessed later in a script tag with src

我希望能夠將變量從 php 傳遞到我的 javascript 代碼中,以保存給定用戶的高分。 我通過在頁面頂部聲明成功地做到了這一點:

<?php
    session_start();


    $bricks = $_SESSION["bricks"];
    require 'includes/dbh.inc.php';
    require 'save.php';


?>

SESSION['bricks'] 是數據庫中的高分。 php 代碼中 html 代碼的結尾我將整個游戲寫在一個腳本標簽中。 在游戲里

this.highScore = "<?php echo $bricks?>";

但這是漫長而混亂的。 假設我想用<script src="myGame.js"></script>替換長腳本標記,這將是有問題的,因為該文件將不再是一個 php 文件並且無法獲取會話變量磚塊。

使用全局范圍時,我可以從會話變量中獲取變量 highscore

<script> var highScore = <?php echo $bricks;?>;</script>

后來:

<script>console.log(highScore)</script>

但是如果我將第二個腳本標記鏈接到源:

<script src="myGame.js"></script>

我將無法在 myGame.js 中訪問該變量 highScore。 有沒有辦法將頁面頂部的腳本標記中的變量傳遞到具有 src 屬性的腳本標記中,並在鏈接的 javascript 文檔中訪問該變量? 有一個解決方法,但我想知道我是否可以通過這種方式使其更易於管理。

首先讓你的js代碼穩定:

var highScore = parseInt("<?php echo $bricks;?>");

在您的 javascript object嘗試將全局變量 highScore 設置為對象的屬性:

this.highScore = highScore;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM