У меня есть внешний скрипт, а затем встроенный скрипт внизу моего <body>
. Похоже, что инлайн скрипт работает до внешнего скрипта, который не должен произойти, в соответствии с этим ответом:Сценарии не работают в Chrome
Если вы не динамической загрузки скриптов или пометив их, как отсрочка или асинхронном, то скрипты загружаются в порядке, указанном на странице. Не имеет значения, является ли это внешним скриптом или встроенным скриптом - они выполняются в том порядке, в котором они встречаются на странице. Встроенные скрипты, которые поступают после внешних скриптов, сохраняются до , все внешние скрипты, которые были перед ними, загружены и запущены.
Src: https://stackoverflow.com/a/8996894/114855
Это мой код:
<script src="https://checkout.stripe.com/checkout.js"></script>
<script>
var handler = StripeCheckout.configure({
key: 'pk_live_HhFqemZFyEUJVorFzYvjUK2j',
token: function(res) {
$('#pay_token').val(res.id);
$('#pay_email').val(res.email)
$('#pay_amount').val(parseFloat($("#amount").val())*100);
$('#pay_description').val($("#description").val());
$('#pay_real').submit();
}
});
/* .. */
</script>
</body>
консоль показывает, что StripeCheckout не определен (что внешний скрипт должен определить)
Это имеет смысл, поскольку вкладка сети показывает, что мой exter Запрос nal все еще ожидает. Но я не знаю, почему браузер не ждать checkout.js быть неправдоподобным:
Загрузите внешний файл в 'head' документа – APAD1