看板 Web_Design 關於我們 聯絡資訊
<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
MangoTW:元素本身style屬性跟選擇器套用的CSS是兩回事 07/25 14:01
抱歉 但事實上不管是通過選擇器或者style都能夠具體的讓元件呈現指定的屬性 不都是具體的將屬性寫入元件之中嗎? 有沒有關鍵字讓我爬個文?
crossdunk:直接學JQUERY吧@@ 07/25 14:08
vi000246:你把script移到obj的下面試試 07/25 14:13
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
superpai:https://developer.mozilla.org 07/25 15:02
superpai:/en-US/docs/Web/API/HTMLElement.style 07/25 15:02
superpai:看這頁 07/25 15:02
謝謝 這個我知道 我以前也都是用Javascript寫入style的 因為之前做的都是webAPP那樣的小頁面 主要著重在js互動 所以也都是在用js寫出css要的樣子 只是這次想要用傳統的css來寫 卻發生js取不到值的問題 ※ 編輯: forestluch (61.231.83.72), 07/25/2014 15:41:57
superpai:你自己看那頁有寫,這不是問題,而是規格。 07/25 15:47
謝謝 經你這麼一說我再度用破破的英文找到了這段... 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