Как я могу добавить data-cookieconsent = "statistics" в тег скрипта?

На моем веб-сайте WordPress плагин, который я использую, создает сценарий. Это фрагмент плагина.

<!-- Start of Async Drift Code -->
<script>
"use strict";

!function() {
  var t = window.driftt = window.drift = window.driftt || [];
  if (!t.init) {
    if (t.invoked) return void (window.console && console.error && console.error("Drift snippet included twice."));
    t.invoked = !0, t.methods = [ "identify", "config", "track", "reset", "debug", "show", "ping", "page", "hide", "off", "on" ], 
    t.factory = function(e) {
      return function() {
        var n = Array.prototype.slice.call(arguments);
        return n.unshift(e), t.push(n), t;
      };
    }, t.methods.forEach(function(e) {
      t[e] = t.factory(e);
    }), t.load = function(t) {
      var e = 3e5, n = Math.ceil(new Date() / e) * e, o = document.createElement("script");
      o.type = "text/plain", o.crossorigin = "anonymous", o.async = !0, o.src = "https://js.driftt.com/include/" + n + "/" + t + ".js";
      var i = document.getElementsByTagName("script")[0];
      i.parentNode.insertBefore(o, i);
    };
  }
}();
drift.SNIPPET_VERSION = '0.3.1';
drift.load('33xndb9yn9ha');
</script>
<!-- End of Async Drift Code -->

Я хочу разрешить CookieBot предварительное согласие на этот скрипт, чтобы скрипт выглядел так

<script type = "text/plain" data-cookieconsent = "statistics" src = "where/ever"></script>

Я попытался просто добавить его с помощью статистики o.data-cookieconsent = "вот так:

   <!-- Start of Async Drift Code -->
<script>
"use strict";

!function() {
  var t = window.driftt = window.drift = window.driftt || [];
  if (!t.init) {
    if (t.invoked) return void (window.console && console.error && console.error("Drift snippet included twice."));
    t.invoked = !0, t.methods = [ "identify", "config", "track", "reset", "debug", "show", "ping", "page", "hide", "off", "on" ], 
    t.factory = function(e) {
      return function() {
        var n = Array.prototype.slice.call(arguments);
        return n.unshift(e), t.push(n), t;
      };
    }, t.methods.forEach(function(e) {
      t[e] = t.factory(e);
    }), t.load = function(t) {
      var e = 3e5, n = Math.ceil(new Date() / e) * e, o = document.createElement("script");
      o.type = "text/plain", o.crossorigin = "anonymous", o.async = !0,  o.data-cookieconsent = "statistics", o.src = "https://js.driftt.com/include/" + n + "/" + t + ".js";
      var i = document.getElementsByTagName("script")[0];
      i.parentNode.insertBefore(o, i);
    };
  }
}();
drift.SNIPPET_VERSION = '0.3.1';
drift.load('33xndb9yn9ha');
</script>
<!-- End of Async Drift Code -->

Но я получаю эту ошибку в консоли: Uncaught ReferenceError: недопустимая левая часть в назначении Приветствуются любые указания относительно того, что я делаю неправильно или как правильно добавить data-cookieconsent = "statistics".

При использовании точечной записи в имени свойства не может быть -. Будет o['data-cookieconsent']='...', но, возможно, потребуется использовать setAttribute()

charlietfl 30.05.2018 02:00
o.dataset.cookieconsent = "statistics"
Jaromanda X 30.05.2018 02:09

Спасибо, теперь это работает безупречно @charlietfl

Austin Jones 30.05.2018 02:13
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
3
444
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Как упоминал Charlietfl в комментариях, проблема заключалась в том, что точечная запись не могла содержать "-" в имени. Подробнее о точечной нотации и синтаксисе Здесь: MDN Web Docs

так это:

o.data-cookieconsent = "statistics"

следует записать как:

o['data-cookieconsent']='statistics'

Другие вопросы по теме