Wordpress: как использовать javascript переменных в html теле - PullRequest
1 голос
/ 19 июня 2020

Я новичок в Wordpress, Javascript и HTML, поэтому я знаю, что этот вопрос действительно базовый c, но мне не удалось найти его нигде решенным.

Я хочу чтобы создать некоторые переменные в javascript, а затем отобразить их на моей странице, созданной в Wordpress.

Читая другие сообщения, которые я обнаружил, мне нужно вставить код javascript, который в конце хранит мою переменную таким образом (фиктивная версия):

<script type="javascript"> 
     document.getElementById('test').innerHTML = 'hello';
</script>

И затем в текстовом блоке, который я хочу отобразить, моя переменная будет отображаться, я должен добавить этот код:

<body>
    <p id="test"></p>
</body>

Однако я попытался добавить javascript в заголовок (заголовок Tatsu), а также попытался добавить его в текстовый блок (HTML версия) в разных комбинациях, и это никогда не сработало. Пытался добавить блок script до и после блока body, а также попытался разместить его внутри, до и после строки отображения.

Если я попробую следующее, это сработает:

<body>
    <p>hello</p>
</body>

Думаю, моя проблема в том, что я неправильно устанавливаю переменную.

Кто-нибудь может помочь? Приносим извинения, если проблема уже где-то решена, потратила несколько часов и не смогла ее найти.

Заранее спасибо.

1 Ответ

2 голосов
/ 19 июня 2020

Ваша проблема - это тип, который вы здесь используете:

<script type="javascript"> 

Я заметил это при построении примера этой проблемы.

javascript не является правильным пантомимом тип.

Это должно быть text/javascript согласно https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types

Обратите внимание, что это не полный список. Такие как application/javascript также действительны. См. Также https://www.iana.org/assignments/media-types/media-types.xhtml

Рабочий пример:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
</head>
<body>
    <p id="test">
      This shouldn't show up
    </p>
    <script type="text/javascript"> 
         console.log("####### JAVASCRIPT IS RUNNING ######")
         document.getElementById('test').innerHTML = 'hello';
    </script>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...