首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript奇怪风格的东西

问Javascript奇怪风格的东西
EN

Stack Overflow用户
提问于 2014-02-09 20:28:00
回答 1查看 128关注 0票数 0

我有一个拉伸的部分,里面有多个部分。这些部分在我的CSS中对齐为“合理”。在正常的HTML代码中,这很好。如下所示:

普通HTML -示例1我想用js创建这个菜单。这是因为菜单上的<a>标记包含javascript函数。问题是,当js可用时,<a href>必须执行javascript函数,否则必须打开一个普通的url。

我尝试过这样做,但是当js可用时,浏览器在函数执行后仍然打开href url (当然)。

代码语言:javascript
复制
<a href='when_js_is_not_available.html' onclick='whenJsIsAvailable()'>Link</a>

我找到了一些东西

代码语言:javascript
复制
<section id=menu>
    <script>
        loadMenu();
    </script>

    <noscript>
        //Working html code, as showed on example 1
    </noscript>
</section>

Javascript:

代码语言:javascript
复制
function loadMenu(){
    document.getElementById('menu').innerHTML=""
            +"<a href='javascript:about()'><section class='linkNav'>Over NKika</section></a>"
            +"<a href='javascript:donate()'><section class='linkNav'>Doneren</section></a>"
            +"<a href='#'><section class='linkNav'>Inschrijven</section></a>"
            +"<a href='#'><section class='linkNav'>Fotos</section></a>"
            +"<a href='#'><section class='linkNav'>Links</section></a>"
            +"<section id='stretch'></section>";
}

这将返回与示例1相同的html代码。

错误造型。伸展运动出了点问题,诸如此类。

这个问题与CSS无关,因为在示例1中,一切都很好。

在Chrome和Firefox的开发者工具中,代码看起来完全一样。

我已经在这方面工作了几个小时,并且尝试了很多次,但我不知道如何修复this.Thank您的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-09 21:09:09

这个怎么样:

代码语言:javascript
复制
<script>
var onclicks=document.querySelectorAll('a[onclick]');
for (index in onclicks)
{
onclicks[index].href='#';
}
</script>

我们使用定义的onclick事件选择每个锚点,然后将其href属性设置为#。因此,如果浏览器有JS,这将触发,并删除hrefs。如果没有JS,那么这当然不会触发,原始的href将保持原样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21664600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档