是否可以根据网址更改网页上的内容?
例如,当有人访问时:
example.com/dyanmictextpage.html/?utm_source=google&utm_campaign=dynamictext&utm_term=hello-world
我想更新页面上的特定文本,然后说“Hello World”,它基于“utm_term = hello-world”下URL的最后部分
代码需要自动插入“utm_term =”之后的任何内容并删除连字符并将每个单词的首字母大写.....
你知道怎么做?答案 0 :(得分:1)
var message = '';
var query = document.location.search.substring(1); // Remove leading '?'
var params = query.split('&');
// Get 'utm_term' from the request parameters
for (var i = 0; i < params.length; i++) {
var key = params[i].split('=')[0];
if (key === 'utm_term') {
message = params[i].split('=')[1];
break;
}
}
if (message.length > 0) {
// Split the message by words and capitalize the first letter of each word
var words = message.split('-');
for (var i = 0; i < words.length; i++) {
words[i] = words[i].charAt(0).toUpperCase() + words[i].substring(1);
}
// Finally, put the message to HTML (say, to element with id="message")
document.getElementById('message').innerHTML = words.join(' ');
}
答案 1 :(得分:0)
你可以 - 一个好的起点就是把你的问题分解成更小的问题,然后逐个解决。
您需要做的第一件事是从URL获取查询字符串值(即utm_term = hello-world):
How can I get query string values in JavaScript?
一旦你有了这些,你需要动态替换连字符之类的东西,这样你就可以将数据加工成你想要的格式:
完成后,您可以将内容注入页面。我会留下那一点让你抬头看。