Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript onClick和mouseOver函数_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript onClick和mouseOver函数

Javascript onClick和mouseOver函数,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我想在我的网站上使用onclick和mouseover,但当我尝试onclick时,它不会起作用。 我想在单击时更改文本的背景色,但它会立即更改为以前的颜色 这是我的html: <a id="a" class="a" href="bereka.html" onclick="myFunction()">HOME &nbsp;</a> 下面是我的脚本,带有ida function myFunction() { document.getElementById(

我想在我的网站上使用onclick和mouseover,但当我尝试onclick时,它不会起作用。 我想在单击时更改文本的背景色,但它会立即更改为以前的颜色

这是我的html:

<a id="a" class="a" href="bereka.html" onclick="myFunction()">HOME &nbsp;</a>
下面是我的脚本,带有
id
a

function myFunction() {
    document.getElementById("a").style.backgoundcolor = "#000";
}

JavaScript是区分大小写的,而且您还输入了一个错误
backgroundColor
应该是
backgroundColor
(在
Color
中大写C,在
background
中大写r)。

如果页面上有一个链接,单击它,页面就会导航离开。链接背景色将不会应用于下一页加载


要使链接对应于当前页面,您需要向元素添加一个类,以便可以对其进行不同的样式设置

您将单击事件绑定到的元素是一个链接,默认情况下,链接将导航到其href属性中指定的URL,如果没有该属性,则会导致页面刷新

如果要阻止默认操作,从而仅执行函数,则应将事件对象上的preventDefault设置为true,如下所示:

function myFunction(event) {
    document.getElementById("a").style.backgoundcolor = "#000";
    event.preventDefault = true;
}

你的代码有点错误。打字和功能。试试这个:

function myFunction(e) {
    document.getElementById("a").style.backgroundcolor = "#000";
    e.preventDefault = true;
    return false;
}

首先,您的代码不正确。还要从html中删除onclick,我想您使用的是jquery,因为您添加了标签
jquery
,所以使用下面的代码而不是onclick

$(document).ready(function(){
    $('#yourLink').on('click', function(e){
        //your code 
        document.getElementById("a").style.backgroundcolor = "#000";
        e.preventDefault = true;
        return false;
    });
});

这应该行得通。希望对你有帮助

您可以使用CSS处理鼠标悬停和访问的链接,这通常比使用javascript更干净
a:visited
允许您更改已访问链接的样式,
a:hover
在您将鼠标悬停在链接上时更改链接的样式。以下是一些供参考的链接:


backgroundColor
是一个打字错误。因为它是一个链接,你可以导航到其他地方。它的可能副本实际上应该是
backgroundColor
:)@user3266023它适合我。当然,它会离开页面,因为您并没有阻止它这样做:您需要手动更新页面的html,为活动链接创建一个类,或者编写一些JavaScript来确定与页面对应的链接。
$(document).ready(function(){
    $('#yourLink').on('click', function(e){
        //your code 
        document.getElementById("a").style.backgroundcolor = "#000";
        e.preventDefault = true;
        return false;
    });
});