CSS設定TABLE屬性防止表格被字撐開
table-layout: automatic/fixed;
automatic 預設值, 各儲存格(Cell)決定大小.
fixed 固定大小, 決定於表格 width及各欄位width屬性
word-wrap: break-word;強制執行換行
word-break: break-all;
2010年11月12日
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()
{}
}
//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';
}
雖然這東西影響不大,但是覺得很礙眼的話,以上方式可以把它處理掉.
發現在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);
訂閱:
文章 (Atom)