[問題] Javascript取CSS屬性
<html>
<head>
<style type="text/css">
#obj{
width: 200px; //直接定義css寬200px
}
</style>
</head>
<body onload=init();>
<div id="obj"></div>
<script>
function init(){
alert(document.getElementById("obj").style.width);//取不到原本的200px
document.getElementById("top_logo").style.width = 640+"px";
alert(document.getElementById("obj").style.width);//取到640px
}
</script>
</body>
</html>
像這樣一個簡單的網頁與腳本
我不懂 為什麼取不到style裡的200px
非得用Javascript覆寫css後才會取到後來的640px
網頁新手
求版友提示問題
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.83.72
※ 文章網址: http://www.ptt.cc/bbs/Web_Design/M.1406267242.A.B2F.html
※ 編輯: forestluch (61.231.83.72), 07/25/2014 13:48:29
※ 編輯: forestluch (61.231.83.72), 07/25/2014 13:49:39
推
07/25 14:01, , 1F
07/25 14:01, 1F
抱歉 但事實上不管是通過選擇器或者style都能夠具體的讓元件呈現指定的屬性
不都是具體的將屬性寫入元件之中嗎?
有沒有關鍵字讓我爬個文?
推
07/25 14:08, , 2F
07/25 14:08, 2F
推
07/25 14:13, , 3F
07/25 14:13, 3F
Jquery是一定會用的 只是有些基本的東西會想用Javascript來寫
少掛一個lib或者了解基本概念...
如果就目的論是這樣子的
我希望能在<style></style>描述css 畢竟這個css可能會讓其他網頁使用
但我又希望能夠動態的根據當前使用者狀態取得物件css並加以計算覆寫
MangoTW說的style不同於選擇器
那麼用jquery可以解決嗎?
目前想到的就是初始化用document.getElementById逐一寫入style屬性
這樣之後就能正常取值並加以計算
可是這樣做就不能把樣式表寫成.css讓其他網頁使用了
※ 編輯: forestluch (61.231.83.72), 07/25/2014 14:34:52
→
07/25 15:02, , 4F
07/25 15:02, 4F
→
07/25 15:02, , 5F
07/25 15:02, 5F
→
07/25 15:02, , 6F
07/25 15:02, 6F
謝謝
這個我知道 我以前也都是用Javascript寫入style的
因為之前做的都是webAPP那樣的小頁面
主要著重在js互動 所以也都是在用js寫出css要的樣子
只是這次想要用傳統的css來寫
卻發生js取不到值的問題
※ 編輯: forestluch (61.231.83.72), 07/25/2014 15:41:57
→
07/25 15:47, , 7F
07/25 15:47, 7F
謝謝 經你這麼一說我再度用破破的英文找到了這段...
To get the values of all CSS properties for an element you should use
window.getComputedStyle() instead.
基本上實測後已解決利用jAVASCRIPT取得外步css樣式表的問題
※ 編輯: forestluch (61.231.83.72), 07/25/2014 16:07:39