javascript - JavaScript 执行适用于 Chrome 而不是 WordPress
问题描述
我在 Chrome 控制台开发工具中运行此代码,它可以工作:
const params = new URLSearchParams(window.location.search);
if (window.location.href.indexOf("Phone") != -1) {
$('.test111232 a').attr('href', 'tel:1 ' + params.get('Phone'));
}
if (window.location.href.indexOf("state") != -1) {
$('.test111232234 a').attr('href', 'https://www.example.com/ddd?state=' + params.get('state'));
}
但是,当我使用 Elementor HTML 小部件将页面保存在 WordPress 上时,它只会更改页面上的第一个数字。
有任何想法吗?
解决方案
好的,所以基本上修复错误的方法是添加以下内容:
$(document).ready(function()
在上面的代码之前,所以它看起来像这样:
<script>
$(document).ready(function() {
const params = new URLSearchParams(window.location.search);
if (window.location.href.indexOf("Phone") != -1) {
$('.test111232 a').attr('href', 'tel:1 ' + params.get('Phone'));
}
if (window.location.href.indexOf("state") != -1) {
$('.test111232234 a').attr('href', 'https://www.example.com/ddd?state=' + params.get('state'));
}
});
</script>
可能相关的一个方面。我有一个旧版本的 elementor pro,它可能会影响通过 html 小部件加载 js。
我有脚本打开和关闭标签,但由于某种原因它想要这个功能,然后它就起作用了。可能这就是它应该首先出现的方式。
推荐阅读
- java - How to fix an error from the gwt when deploying an application in java 8 with google-app-engine
- autocomplete - 如何将自动完成添加到文本表单字段?
- php - Laravel creating API return with help of JSON field in MySQL
- php - 转发器 ACF 子域的计数
- javascript - 如何使用钩子设置 react-i18n,得到 TypeError: Cannot read property '0' of undefined
- python - Django Rest Framework:序列化 id 列表
- racket - Delete DrRacket session history
- firefox-addon-webextensions - Understanding Promises: Need to combine multiple results
- javascript - Parsing CSV content with Javascript
- java - What are the possible values of spring.datasource.initialization-mode?