2010年11月12日

CSS防止表格被撐開

CSS設定TABLE屬性防止表格被字撐開

table-layout: automatic/fixed;
automatic 預設值, 各儲存格(Cell)決定大小.

fixed 固定大小, 決定於表格 width及各欄位width屬性

word-wrap: break-word;強制執行換行
word-break: break-all;

2010年11月11日

PHP 的類別, 繼承, 抽象類別, 介面

我對PHP CLASS的認識, 記錄一下.

//public 可隨意存取
//private 僅對本身內部開放, 不能繼承
//protected 僅對本身內部開放, 可以繼承

//類別
class myclass
{
public $var1='1';
private $var2='2';
protected $var3='3';

//建構函式
//物件建立時會行此函數如有參數,建立物件時需給參數....new myclass($v1,$v2)
function __construct()
{
//物件產生時要執行的程式碼
//如:設定初始值、預設值、連接資料庫.
// $this->var1 = $v1;
//$this->var2 = $v2;
echo "物件產生";
}

//解構函式
//物件消失前會執行此函數
function __destruct()
{
//物件銷毀前要執行的動作
//如:關閉資料庫.
echo "物件消失";
}
//clone函數:物件被複製時會執行此函數
function __clone()
{
//
}
//類別的方法
public function myfun( $par1, $par2 )
{
$this->var1+$this->var2+$this->var3;
return $par1+$par2;
}
public function a()
{
echo "aa";
$this->var1='222aa';
}
}
//物件複製
$cloneobj = clone $obj;

//繼承
class extclass1 extends myclass//可以為空
{}
class extclass2 extends myclass
{
public function a()
{
parent::a(); //呼叫父類別被覆蓋的方法.
echo $this->var1;
}
public $other_var1; //新增父類別沒有的變數
function other_fun () //新增父類別沒有的方法
{
//
}
function myfun() //改寫父類別已有的方法
{
//
}

}

//抽象類別,抽象方法
abstract class abstract_class_name //**只要裡面有抽象的方法,這個類別就要宣告成抽象類別(abstract class)
{
public $a;

//抽象方法
abstract function abstract_function1();//無{}內的內容,直接加分號
abstract function abstract_function2();//無{}內的內容,直接加分號

//一般的方法
function myfunction()
{
//
}
}
//繼承抽象的類別
class myclass extends abstract_class_name
{
public function abstract_function1() //必需重寫抽象方法
{
//
}
public function abstract_function2() //必需重寫抽象方法
{
//
}
}
//介面
interface interface_name
{
//介面中不可以宣告屬性(public $var;)
public function interface_function1();//介面中所有成員都必需是public
public function interface_function2();//介面中所有成員都必需是public
}
//實現介面
//class 類別名 implements 介面名
class myclass implements interface_name
{
public $any_var;
public function interface_function1()
{}
public function interface_function2()
{}
}

2010年11月3日

createElement 時 IE會顯示 submitName

在很開心的 createElement 並指定name='username'的時侯

發現在IE檢視原始碼會出現 submitName='username'

前面的submit怎麼弄都弄不掉,後來找到解決方法.

解決方式如下
方法1.直接指定上層元素如  td.innerHTML=''

方法2.
try{input = createElement(');}
catch(e)
{
input = document.createElement('input');

input.name='username';
}

雖然這東西影響不大,但是覺得很礙眼的話,以上方式可以把它處理掉.

2010年11月1日

javascript createElement備忘

測試一測試二


td = document.createElement("td");

txt = document.createElement("text");

txt.innerHTML='測試一';
td.appendChild(txt);

input = document.createElement("input");
input.type = 'text';
input.style.width='50px';
input.id='';
input.name='';
input.value = '';
input.setAttribute('onblur', '' );
td.appendChild(input);

txt = document.createElement("text");

txt.innerHTML='測試二';
td.appendChild(txt);

tr = document.createElement("tr");

tr.appendChild(td);

table[0].appendChild(tr);