简而言之:
<script type="text/javascript">
var root = '${config.root}';
var userLanguage = '${config.language}';
var userTimezone = '${config.timezone}';
</script>
<script type="text/javascript" src="js/scripts.js"></script>
然后,在 scripts.js
中,依赖这些变量:
if (userLanguage == 'en') { .. }
${..}
只是生成页面的脚本中的值的占位符。它可以是 php、jsp、asp 等等。要点是 - 它是动态的,因此它不能成为 .js
文件(静态)的一部分。
那么,静态javascript文件依赖这些外部定义的配置变量可以吗? (当然,它们主要是配置)。
还是最好让 .js
文件也动态提供(即,使其成为 .php/.jsp,并使用正确的 Content-Type
) ,并在其中定义这些值。
最佳答案
您可以按照 jquery plugins 中使用的示例进行操作。它们以特定格式定义参数的默认值,用户可以重载这些默认值。因此,在我看来,允许用户以文档格式定义一些可供外部脚本使用的变量是可以的。
关于javascript - .js 文件依赖包含 html 中声明的变量是一个好习惯吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4698912/