Javascript 设置从jQuery';加载的链接的颜色;。加载()';方法
在我的index.html文件中,我有以下代码:Javascript 设置从jQuery';加载的链接的颜色;。加载()';方法,javascript,jquery,html,getelementbyid,Javascript,Jquery,Html,Getelementbyid,在我的index.html文件中,我有以下代码: <div id="navbar"></div> <script type="text/javascript"> $(document).ready(function() { $('head').append('<link rel="stylesheet" type="text/css" href="stylesheets/navigation.css">');
<div id="navbar"></div>
<script type="text/javascript">
$(document).ready(function() {
$('head').append('<link rel="stylesheet" type="text/css" href="stylesheets/navigation.css">');
$("#navbar").load("scripts/navigationbar.html");
});
</script>
但那没用。有什么建议吗?添加HTML后,您需要在回调中选择元素
$("#navbar").load("scripts/navigationbar.html", function () {
document.getElementById("nav-page-1").style.color = "#ff0000";
});
根据您提供的代码,您可能试图在元素存在之前选择它。
.load()
方法是异步的,因此应该在回调中添加逻辑,以便在事件完成时触发回调。作为旁注,您还需要访问style
对象上的color
属性(即element.style.color
而不是element.color
)。doElement没有color属性,您可以通过设置style属性的颜色来设置颜色
document.getElementById(“nav-page-1”).style.color=“#ff0000”代码>这看起来更漂亮$('nav-page-1').css('color','ff0000')代码>只是一个旁注:为什么要使用jQuery/javascript附加样式表?你不能直接在html页面中添加链接代码吗?我意识到导航栏在每个页面上,所以你可以编辑它一次并动态注入它,但是css链接标签可以为你做到这一点。我这样做是为了我可以复制粘贴导航条形码到每个页面,而不必将链接复制到头标签中。样式表navigation.css只用于导航栏,所以我认为在使用导航栏之前它不需要存在。附加样式表是个坏主意吗?
document.getElementById("nav-page-1").color = "#ff0000";
$("#navbar").load("scripts/navigationbar.html", function () {
document.getElementById("nav-page-1").style.color = "#ff0000";
});