下面範例中的 setStyleRule() 可以用來動態增加 stylesheet 中的項目(selector), applyClass() 則可以用來為物件刪除/附加新的 CSS Style Class (只能是 class).
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="ext_style.js"></script>
<script type="text/javascript">
function fnInit() {
setStyleRule("", "#id1", "color:blue;");
}
window.addEventListener('load', fnInit);
</script>
</head>
<body>
<h1 id="id1">My Heading 1</h1>
<button type="button" onclick="document.getElementById('id1').style.color = 'red'">
Click Me!</button>
</body>
</html>
MagicJackTing 發表在 痞客邦 留言(0) 人氣(1,103)

前二天心裡有個念頭突然閃過, 於是用手機看了一下自己在部落格的 PO 文.
結果... 昏倒... 手機模式的 CSS Style 設定都沒有出現.
於是寫信給 客服, 客服的回信倒是蠻快的 :)
可是, 回信內容卻是令人十分的不滿意, 就只說 手機模式目前不能自定 CSS Style, 也沒有設定檔可以加. :(
MagicJackTing 發表在 痞客邦 留言(0) 人氣(2,229)
運算子優先權 (C 語言) Percedence Table
C 語言運算子優先權重表
|
運算子 Operator |
說 明 Description |
結合順序 Associativity |
|---|
| 1 |
() [] -> . ++ -- |
Function call Array subscripting Element selection (of struct or union) through pointer Element selection (of struct or union) by reference increment/decrement (suffix) (註1) |
左至右(註2) |
| 2 |
! ~ ++ -- + - * & (type) sizeof |
logic NOT bitwise NOT increment/decrement (prefix) unary plus and minus Indirection (dereference, right value) Address-of (left value) type cast Size-of |
右至左(註2) |
| 3 |
* / % |
Arithmetic multiplication, division, and remainder |
左至右 |
| 4 |
+ - |
Arithmetic addition, subtraction |
左至右 |
| 5 |
<< >> |
Bitwise left shift, right shift |
左至右 |
| 6 |
< <= > >= |
Relational less than, not greater than Relational greater than, not less than |
左至右 |
| 7 |
== != |
Relational equal, not equal |
左至右 |
| 8 |
& |
Bitwise AND |
左至右 |
| 9 |
^ |
Bitwise XOR |
左至右 |
| 10 |
| |
Bitwise OR |
左至右 |
| 11 |
&& |
Logical AND |
左至右 |
| 12 |
|| |
Logical OR |
左至右 |
| 13 |
?: |
Ternary conditional |
右至左 |
| 14 |
= += -= *= /= %= &= ^= |= <<= >>= |
Direct assignment Assignment by sum, difference Assignment by product, quotient, remainder Assignment by bitwise AND, XOR, OR Assignment by bitwise left shift, right shift |
右至左 |
| 15 |
, |
Comma |
左至右 |
MagicJackTing 發表在 痞客邦 留言(6) 人氣(81,592)
以往寫網頁都是把 CSS Style 在 <head></head> 區段中載入, 今天發現在 <body></body> 區段中載入也是可以的.
另外如果不是要載入 CSS 檔, 而是要把 CSS Style 插入在 <body></body> 區段中, 則需要用 <div></div> 區段把 <style></style> 區段包住.
MagicJackTing 發表在 痞客邦 留言(0) 人氣(2,456)
以前以為 typedef 的功能可以用 #define 來完成, 用起來感覺功能也差不多, 例如:
typedef unsigned char bool; // 用這一行或者是下一行 二選一
//#define bool unsigned char
bool flag1, flag2;
MagicJackTing 發表在 痞客邦 留言(0) 人氣(6,036)
C 語言中 typedef 可以用來擴充 C 原有的資料型態. 通常我們會將某個資料型態或者將常用的資料型態組合給予一個比較直觀而易懂的別名. 定義別名之後我們就可以像使用原有的資料型態來宣告或定義變數一樣, 直接拿它來宣告或定義(
註一,
註二)變數.
MagicJackTing 發表在 痞客邦 留言(7) 人氣(143,097)
程式在移植或者整合時, 有時會遇到使用結構來的定義程式所用到的資料的情形, 有時原作者是用一指向結構的指標來處理, 但是有時也會有直接用結構變數的情形.
這些程式我們在使用的時候按理應該盡量不要更動以免日後改版時造成問題, 不過要是遇到下面二種狀況那就...
原始程式是用指標來指向要處理的結構變數, 而現在我們想把規模縮小, 只會有一份結構變數, 同時也希望最佳化目的碼, 讓系統小一點, 快一點.
或者原始程式中把結構變數寫死了, 所有的函數都是針對那一個結構變數寫的, 結構變數生不出第二個 instance 來. 而我們卻是需要擴充一下, 讓它能處理多個結構變數.
MagicJackTing 發表在 痞客邦 留言(0) 人氣(3,633)

外部資料結構
在寫 CPU 或介面晶片的驅動程式時, 經常會使用到某些固定位址, 如: ARM Cortex-M 把系統設定及狀態對應到記憶體的特定位址, 某些周邊 IC, 例如 PCI, USB... 也是使用一小段記憶體空間. (註: 常見的周邊 IC 暫存器定址有二種: 一種是只有二個位址空間, 一個是 '指令/地址暫存器', 一個是 '資料暫存器'; 另一種則是直接使用 CPU 的記憶體空間來對應)
軟體功力較佳的 SoC 晶片製造廠所提供的驅動程式, 通常會將這一小段記憶體空間以結構 (struct) 的方式定義好, 再使用 define 將特定的位址值 (常數), 定義成一虛擬變數. 當然如果晶片功能比較簡單就不見得是用這種方法.
MagicJackTing 發表在 痞客邦 留言(0) 人氣(11,151)
個人覺得 C 語言最神奇的地方是有好些個對等寫法
|
類型 |
相關運算子 |
寫法一 |
寫法二 |
說明/宣告 |
|---|
| 1. |
(變數)取址 |
"&" |
p |
&x |
p 為指標, 並且指向變數 x |
| 2. |
(指標)取值 |
"*" |
*p |
x |
同上 |
| 3. |
陣列與指標 |
"[]" and "*" |
p[n] |
*(p+n) |
p 為陣列變數或者指標變數 |
| 4. |
結構成員 |
"->" and "." |
p->x |
(*p).x |
p 為指標, 並指向一結構
x 為該結構成員 |
MagicJackTing 發表在 痞客邦 留言(0) 人氣(1,790)
C 語言預設會幫我們作一些型別轉換的動作, 一般的型別轉換不只會更換資料型別, 更會使資料內容有所變動, 例如:
float fVar = 1.2;
int32_t iVar;
iVar = fVar; // iVar 值為整數 1
MagicJackTing 發表在 痞客邦 留言(1) 人氣(27,556)