devilion98 Ответов: 0

Не могу добавить больше кнопок с кодировкой js на мой сайт wordpress


Мне интересно, может ли кто - нибудь знать быстрое решение этой проблемы. Прямо сейчас, применяя один javascript к блоку WordPress, он работает нормально.

Как только вы добавляете второй виджет с похожим кодом, он вызывает какой-то конфликт с первым.. возможно, это может быть связано с тем, что они используют одно и то же имя или делятся какой-то информацией.

Я опубликую оба фрагмента кода ниже, и вы, возможно, знаете способ полностью разделить их, чтобы они не узнавали друг друга и не конфликтовали.

Эти кнопки buy now Java script от Xsolla & у каждой из них есть разные значения, мне нужно добавить в общей сложности 10 12, но прямо сейчас я не могу добавить больше одного без какого-либо конфликта.

Код 1: ВАР вариантов = { маркер доступа: 9upbu4RrjLChk8PgP42n5LqSmqANijKY, тема : { фона: зеленый, фон: темно -}, лайтбокс: { высота: 700px в, счетчик: круглый }, target_element: #хз-pay2play-виджет }; документ ВАР ы =.метод createElement(script) в; с. тип = текст/JavaScript; С. ключевые слова async = true; в с. в src = https://cdn.xsolla.net/embed/pay2play/2.3.0/widget.min.js; ов.метод addEventListener(нагрузка, функция (е) { ВАР widgetInstance = XPay2PlayWidget.создать(параметры); }, false) в; ВАР голову = документ.метод getelementsbytagname(руководитель)[0]; руководитель.метода appendChild(с);

Код 2: ВАР вариантов = { маркер доступа: 9upbGoqnbonvXqyfgaBtsDcyWnv0FXEe, тема : { фона: зеленый, фон: темно -}, лайтбокс: { высота: 700px в, счетчик: круглый }, target_element: #хз-pay2play-виджет }; ВАР ы = документ.метод createElement(script) в; с. тип = текст/JavaScript; С. ключевые слова async = true; в с. в src = https://cdn.xsolla.net/embed/pay2play/2.3.0/widget.min.js; ов.метод addEventListener(нагрузка, функция (е) { ВАР widgetInstance = XPay2PlayWidget.создать(параметры); }, false) в; ВАР голову = документ.метод getelementsbytagname(руководитель)[0]; руководитель.метода appendChild(с);

Блог, в котором мне нужна помощь, это https://www.legioneternalwar.com/crowdfunding/ Вы можете увидеть кнопку Купить ниже, и есть супруг, чтобы быть кнопкой купить для всех пакетов, но они конфликтуют друг с другом.

Что я уже пробовал:

Code 1: var options = { access_token: 9upbu4RrjLChk8PgP42n5LqSmqANijKY, theme : { foreground: green, background: dark }, lightbox: { height: 700px, spinner: round }, target_element: #XS-pay2play-widget }; var s = document.createElement(script); s.type = text/javascript; s.async = true; s.src = https://cdn.xsolla.net/embed/pay2play/2.3.0/widget.min.js; s.addEventListener(load, function (e) { var widgetInstance = XPay2PlayWidget.create(options); }, false); var head = document.getElementsByTagName(head)[0]; head.appendChild(s);





Code 2: var options = { access_token: 9upbGoqnbonvXqyfgaBtsDcyWnv0FXEe, theme : { foreground: green, background: dark }, lightbox: { height: 700px, spinner: round }, target_element: #XS-pay2play-widget }; var s = document.createElement(script); s.type = text/javascript; s.async = true; s.src = https://cdn.xsolla.net/embed/pay2play/2.3.0/widget.min.js; s.addEventListener(load, function (e) { var widgetInstance = XPay2PlayWidget.create(options); }, false); var head = document.getElementsByTagName(head)[0]; head.appendChild(s);

Richard MacCutchan

Пожалуйста, отредактируйте свой код и разбейте его на правильные строки, чтобы он был читабельным. Кроме того, я замечаю, что вы используете одни и те же имена для переменных (options, s и т. д.) В обоих случаях. Компиляторы недостаточно умны, чтобы понять, на какой из них вы ссылаетесь в любом случае. Вы должны использовать уникальные имена для переменных в пределах одной области.

devilion98

Здравствуйте, сэр, я немного новичок в этой области, если вы не возражаете, не могли бы вы объяснить этот вопрос более упрощенно, это было бы здорово.

Richard MacCutchan

Насколько все может быть проще? Если у вас двое детей и вы называете их devillion99, как вы можете заставить только одного из них прийти, когда вы звоните? То же самое и с компьютерными языками. Если у вас есть две переменные в одной области с одинаковым именем, компилятор не может сказать, на какую из них вы хотите ссылаться в любое время. И если вы не понимаете Javascript, вы можете найти множество учебных пособий в интернете. Вот две ссылки, которые помогут вам: Учебник По JavaScript[^] и JavaScript | MDN[^].

0 Ответов