Javascript HTML更改不透明度onload使用此选项将不起作用

Javascript HTML更改不透明度onload使用此选项将不起作用,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有这样一个代码: <body style='opacity:0' onload='this.style.opacity=1'> 将起作用,但: <body style='opacity:0' onload='$(this)[0].style.opacity=1'> 这是行不通的。我可以用这个吗 “这”不起作用有什么原因吗 此在onload中没有上下文,这就是它不工作的原因 如果我通过标记“body”引用,它将起作用 $(“body”)[0]指的是它为什么工作的正

我有这样一个代码:

<body style='opacity:0' onload='this.style.opacity=1'>
将起作用,但:

<body style='opacity:0' onload='$(this)[0].style.opacity=1'>

这是行不通的。我可以用
这个

“这”不起作用有什么原因吗

onload
中没有上下文,这就是它不工作的原因

如果我通过标记“body”引用,它将起作用

$(“body”)[0]
指的是它为什么工作的正文,您也可以使用
document.body

当我
onload='alert(this)
时,为什么会得到
对象

由于
这个
关键字在全局范围内指的是
窗口
对象


因为您使用的是jQuery,所以可以避免内联事件,使用
ready
函数而不是
onload
,并使用
css()
更改样式:


希望这能有所帮助。

这看起来像是混合了香草javascript和jQuery;将
$(“body”)[0].style.opacity=1
更改为
$(“body”).css('opacity','1')我知道。这不是问题。为什么“这个”不起作用。我想用“这个”。我知道这不是问题,如果我认为是,我会发布一个答案;我只是在帮助您改进jQuery代码。好的,谢谢,我不混合mash。这只是个例子。谢谢,但这不是我的问题。我已经实现了这个方法。我只是问为什么“this”不起作用,而“$(“body”)[0]”会起作用。如果我做了“提醒(这个)”,它会说“这”是一个物体,所以它就在那里。好吧,我明白了。当我onload='alert(this)'时,为什么会得到一个对象?这个对象是什么。因为全局范围中的这个关键字指的是窗口对象。
<body style='opacity:0' onload='$(this)[0].style.opacity=1'>
//When the page is fully loaded
$(function(){
    //Change the opacity to 1
    $("body").css('opacity','1');
});