【问题标题】:Insert (random) javascript array item into href将(随机)javascript数组项插入href
【发布时间】:2021-02-05 18:46:38
【问题描述】:

我有以下代码。我想让它根据提供的随机数组项(这是 URL 的后半部分)提供一个 href。换句话说,它应该随机将您带到博客 (http://website.com/blog)、关于页面或主页。我已经注意到这里使用的方法:Getting a random value from a JavaScript array,但他们只控制台记录输出。我找不到任何示例说明如何将该输出放入 href 的后半部分。

<a id='link' href='http://website.com/'>Click me</a>

<script>
var pages = ['blog','about','home'];
</script>

我希望任何答案都将使用 javascript math.random() 函数,但我已将其排除在我的问题之外,以防止如果我没有最有效地使用它,它会变得比必要的更混乱。

【问题讨论】:

  • 您尝试过如何将随机选择的条目添加到 URL 中?

标签: javascript html arrays random href


【解决方案1】:

我们的想法是获取数组的随机索引。获得索引后,您可以从数组中获取值并设置 href 属性。

const anchor = document.getElementById('link');
const pages = ['blog','about','home'];
const random = Math.floor(Math.random() * pages.length);
anchor.href = `http://website.com/${pages[random]}`;

// For Display Purposes Only
document.getElementById('display').innerText = anchor.href;
<a id='link' href='http://website.com/'>Click me</a>
<div id="display"></div>

【讨论】:

    【解决方案2】:

    您可以使用随机元素,然后重新分配 a 标签的 href 属性。

    var pages = ['blog','about','home'];
    const randomElement = pages[Math.floor(Math.random() * pages.length)];
    
    document.querySelector('a').href = `http://${randomElement}.com/`
    console.log(document.querySelector('a').href )
    &lt;a id='link' href='http://website.com/'&gt;Click me&lt;/a&gt;

    【讨论】:

    • 这个答案也很好用,可惜只能选一个。
    • 所以你要使用 2?
    猜你喜欢
    • 2019-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-26
    • 1970-01-01
    • 1970-01-01
    • 2013-05-29
    • 1970-01-01
    相关资源
    最近更新 更多