我已经找到了之前关于这个https://stackoverflow.com/a/6398848/1406888的javascript速记的问题的答案,但它对我不起作用。我不理解它,因为当我在firefox开发人员控制台中使用相同的快捷键时,它可以工作。
下面是我使用的代码的一个简短示例
<div id="list1">
<li>pres</li>
<li>mike</li>
<li>camel</li>
<li>week</li>
</div>
<p></p>
<div id="list2">
<li>time</li>
<li class="test">era</li>
<li>people</li>
<li>life</li>
</div>
<p></p>
<div id="list3">
<li>time</li>
<li class="test">era</li>
<li>people</li>
<li>life</li>
</div>
<script type="text/javascript">
var testId = document.getElementById("list1");
testId.style.borderStyle="solid";
$("#list2").style.borderStyle="solid";
$("list3").style.borderStyle="solid";
</script>
唯一有效的是list1边框。其他的失败了。有没有人能纠正我。
我现在有了一个可以工作的模板。下面是我的代码:
<div id="list1">
<li>pres</li>
<li>mike</li>
<li>camel</li>
<li>week</li>
</div>
<p></p>
<div id="list2">
<li>time</li>
<li class="test">era</li>
<li>people</li>
<li>life</li>
</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
var testId = document.getElementById("list1");
testId.style.borderStyle="solid";
//$("#list2").style.borderStyle="solid"; this does not work
$("#list2").css("border-Style","solid"); this works.
</script>
我就直说了吧。没有什么可以替代getElementById?我以为它是一个可互换的速记,但在我的示例中,它只能使用JQuery速记的.css属性。
发布于 2012-06-27 13:20:12
IMO:您需要在jquery中这样做
$("#list2").css("border-Style","solid")
$("#list3").css("border-Style","solid")
如果你要访问一个带有id的元素,请确保在jquery中添加带有Id的#
。
发布于 2012-06-27 13:09:18
有时,当我只想使用$作为document.getElementById的简写,而不实际需要主要javascript库的函数时,我会在页面中抛出以下内容:
function $(a){return document.getElementById(a);}
节省了大量的打字工作。
发布于 2012-06-27 13:07:00
您需要一些库来提供此快捷方式(如jQuery)。它没有内置于核心语言或您的浏览器中。
此外,对于jQuery,它将是$('#list3')
(您可以使用所有类型的选择器,而不仅仅是节点id)。
https://stackoverflow.com/questions/11219710
复制相似问题