<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-9440714</atom:id><lastBuildDate>Mon, 16 Apr 2012 02:09:37 +0000</lastBuildDate><category>onSelectStart</category><category>MU muti user wordpress</category><category>table</category><category>media</category><category>awk</category><category>start</category><category>player</category><category>TrustedUser</category><category>html</category><category>dbschema</category><category>onDragStart</category><category>bat</category><category>javascript 踩地雷小遊戲</category><category>cdrom、autorun</category><category>ssh</category><category>putty</category><category>滑鼠右鍵</category><category>procmailrc</category><category>procmail</category><category>informix</category><category>sendmail</category><category>ie</category><category>oncontextmenu</category><category>ids 9.4</category><title>東海大野狼的部落格</title><description>這裡是野狼的家....來自於北大荒的小野狼&lt;br&gt;

狼是一種忠貞、團隊、合作的動物~~

一般人只知道牠們的兇殘，但也只是為了生存而已。

人類不更殘忍嗎？</description><link>http://thucop.ysdc.biz/</link><managingEditor>noreply@blogger.com (東海大野狼)</managingEditor><generator>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-7204548059480445197</guid><pubDate>Fri, 19 Jun 2009 01:04:00 +0000</pubDate><atom:updated>2009-06-19T09:26:25.197+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>informix</category><category domain='http://www.blogger.com/atom/ns#'>ids 9.4</category><category domain='http://www.blogger.com/atom/ns#'>table</category><category domain='http://www.blogger.com/atom/ns#'>dbschema</category><title>informix IDS 9.4 table dbschema</title><description>底下這段程式是用來產生 table 的 dbschema，適用在 informix IDS 9.4。&lt;br /&gt;產生的同時會根據目前的 table 的資料筆數去定義出，extent size，而 next size 則預設是 extent size 的 1/4，&lt;br /&gt;資料筆數小於一千筆的會預設是一千筆！&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;# -----------------------------------------------------------------------------&lt;br /&gt;# determine extent size and next extent of table&lt;br /&gt;#&lt;br /&gt;# index space needed:&lt;br /&gt;#   index space needed of one row data assume number of indexes, and&lt;br /&gt;#   size of one index;&lt;br /&gt;#&lt;br /&gt;#   if the table has two indexes:&lt;br /&gt;#&lt;br /&gt;#   the first index has one column, and length of column is 4(bytes)&lt;br /&gt;#   like char(4) or smallint;&lt;br /&gt;#   the second index has two columns, the total length of columns is 12&lt;br /&gt;#&lt;br /&gt;#   so, index space needed of per one row data&lt;br /&gt;#   = ((4+9) + (12+9)) * 1.25 (header) = 42.5 (bytes)&lt;br /&gt;#&lt;br /&gt;#   20000 rows of data for initial table&lt;br /&gt;#   index space needed is&lt;br /&gt;#   = 20000 * 42.5 = 850000 / 1024 = 830 (Kbytes)&lt;br /&gt;#&lt;br /&gt;# data space needed:&lt;br /&gt;#   length of row = 50&lt;br /&gt;#   rows of per pagee = 2020 / 50 = 40&lt;br /&gt;#     ( page size is 2K, but minus header 28 bytes,&lt;br /&gt;#       size of one page is used is 2020 bytes)&lt;br /&gt;#&lt;br /&gt;#   number of data pages for initial table = 20000 / 40 = 500 (pages)&lt;br /&gt;#   total size needed for data = 500 * 2048 / 1024 = 1000 (Kbytes)&lt;br /&gt;#&lt;br /&gt;# initial extent size&lt;br /&gt;#   830 + 1000 = 1830 (Kbytes)&lt;br /&gt;#&lt;br /&gt;# next extent size (table growth)&lt;br /&gt;#   10000 more rows&lt;br /&gt;#   index space needed = 10000 * 42.5 / 1024 = 415 (Kbytes)&lt;br /&gt;#   data space needed  = 10000 / 40 * 2048 / 1024 = 500 (Kbytes)&lt;br /&gt;#   total spcae needed = 415 + 500 = 915 (Kbytes)&lt;br /&gt;#&lt;br /&gt;# -----------------------------------------------------------------------------&lt;br /&gt;#&lt;br /&gt;#&lt;br /&gt;#&lt;br /&gt;# -----------------------------------------------------------------------------&lt;br /&gt;use strict;&lt;br /&gt;&lt;br /&gt;my (%conf, %result, %data, %dbs) ;&lt;br /&gt;&lt;br /&gt;&amp;chk_para();&lt;br /&gt;&lt;br /&gt;if ($conf{table} eq 'ALL') {&lt;br /&gt;   # get all table in the database&lt;br /&gt;   my @oa_tables = &amp;SQL('select tabname, dbinfo("dbspace",partnum) dbs from systables where tabid &amp;rsaquo; 99 order by tabname');&lt;br /&gt;   for my $i(0..$#oa_tables) {&lt;br /&gt;       $dbs{$oa_tables[$i]{tabname}}=$oa_tables[$i]{dbs};&lt;br /&gt;       $result{$oa_tables[$i]{tabname}} = &amp;get_schema($oa_tables[$i]{tabname});&lt;br /&gt;   }&lt;br /&gt;} else {&lt;br /&gt;   my @oa_tables = &amp;SQL('select tabname, dbinfo("dbspace",partnum) dbs from systables where tabname="'.$conf{table}.'"');&lt;br /&gt;   &lt;br /&gt;   $dbs{$oa_tables[0]{tabname}}=$oa_tables[0]{dbs};&lt;br /&gt;   $result{$conf{table}} = &amp;get_schema($conf{table});&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$data{dbschema}='';&lt;br /&gt;foreach my $tab(sort keys %result){&lt;br /&gt;   $data{dbschema} .= $result{$tab}."\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;my (@a_schema, $table_start, $index_start);&lt;br /&gt;@a_schema = split("\n",$data{dbschema});&lt;br /&gt;$data{schema_tb}='';&lt;br /&gt;$data{schema_idx}='';&lt;br /&gt;for my $i(0..$#a_schema) {&lt;br /&gt;   &lt;br /&gt;   if ( $a_schema[$i] =~ /^create table/ ){&lt;br /&gt;       $table_start=1;&lt;br /&gt;       $index_start=0;&lt;br /&gt;   } elsif ( $a_schema[$i] =~ /^create(.*)index(.*)on(.*)/ ){&lt;br /&gt;       $table_start=0;&lt;br /&gt;       $index_start=1;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   $data{schema_tb} .= $a_schema[$i]."\n" if ($table_start);&lt;br /&gt;   $data{schema_idx} .= $a_schema[$i]."\n" if ($index_start);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if ( $conf{output} ) {&lt;br /&gt;   open O,"&amp;rsaquo;$conf{output}";&lt;br /&gt;   print O $data{schema_tb};&lt;br /&gt;   print O $data{schema_idx};&lt;br /&gt;   close O;&lt;br /&gt;}else{&lt;br /&gt;   print $data{schema_tb};&lt;br /&gt;   print $data{schema_idx};&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub get_schema{&lt;br /&gt;   my @a_para = @_;&lt;br /&gt;&lt;br /&gt;   my (@a_table, $o_rowsize, $o_nrows);&lt;br /&gt;   ## get some information for the table&lt;br /&gt;   @a_table = &amp;SQL('select tabid,tabname,rowsize,nrows from systables where tabname = "'.$a_para[0].'"');&lt;br /&gt;   if (!@a_table) {&lt;br /&gt;       &amp;err("$a_para[0] not exists in $conf{db} database!! please check it !!");&lt;br /&gt;   }&lt;br /&gt;   #rint "Table rowsize: $a_table[0]{rowsize}\n";&lt;br /&gt;   $o_rowsize=$a_table[0]{rowsize};&lt;br /&gt;   $o_nrows=$a_table[0]{nrows};&lt;br /&gt;   $o_nrows=1000 if ( $o_nrows &amp;lsaquo; 1000);&lt;br /&gt;&lt;br /&gt;   ## get columns of table from syscolumns&lt;br /&gt;   my (@a_columns, %h_col_len);&lt;br /&gt;   @a_columns = &amp;SQL('select * from syscolumns where tabid='. $a_table[0]{tabid}. ' order by colno' );&lt;br /&gt;   for my $i(0..$#a_columns){&lt;br /&gt;       &lt;br /&gt;       $h_col_len{$a_columns[$i]{colno}}=$a_columns[$i]{collength};&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   ## get index length for the table&lt;br /&gt;   my (@a_index, $o_index_len, $o_index_ksize);&lt;br /&gt;   $o_index_len = 0;&lt;br /&gt;   @a_index = &amp;SQL('select * from sysindexes where tabid = '.$a_table[0]{tabid}.'');&lt;br /&gt;   if ( @a_index ) {&lt;br /&gt;       ## has index, calculate the index size&lt;br /&gt;       for my $i(0..$#a_index) {&lt;br /&gt;           ## get  index clono&lt;br /&gt;           for(keys %{$a_index[$i]}) {&lt;br /&gt;               &lt;br /&gt;               if ( $_ =~ /^part/ &amp;&amp; $a_index[0]{$_} &amp;rsaquo; 0 ) {&lt;br /&gt;                   $_ =~ s/^part//;&lt;br /&gt;                   &lt;br /&gt;                   $o_index_len+=$h_col_len{$_};&lt;br /&gt;               }&lt;br /&gt;           }&lt;br /&gt;           $o_index_len+=9;&lt;br /&gt;       }&lt;br /&gt;   }&lt;br /&gt;   $o_index_len = $o_index_len*1.25;&lt;br /&gt;   $o_index_ksize = int($o_nrows*$o_index_len/1024)+1;&lt;br /&gt;   &lt;br /&gt;   ## data space needed&lt;br /&gt;   my ($o_table_ksize, $o_page_rows);&lt;br /&gt;   $o_page_rows=int(2020/$o_rowsize)-1;&lt;br /&gt;   $o_page_rows=1 if($o_page_rows&amp;lsaquo;=1);&lt;br /&gt;   $o_table_ksize=(int($o_nrows/$o_page_rows)+1)*2;&lt;br /&gt;   &lt;br /&gt;   ## table init Kbytes&lt;br /&gt;   my ( $o_extent_size, $o_next_extent_size);&lt;br /&gt;   $o_extent_size = $o_index_ksize+$o_table_ksize;&lt;br /&gt;   $o_next_extent_size=int($o_extent_size/4)+1;&lt;br /&gt;   &lt;br /&gt;   ## get table schema&lt;br /&gt;   my($o_dbschema, $o_start);&lt;br /&gt;   $o_dbschema='';&lt;br /&gt;   $o_start=0;&lt;br /&gt;   open D,"dbschema -d $conf{db} -t $a_para[0] -ss |";&lt;br /&gt;   while(my $str=&amp;lsaquo;D&amp;rsaquo;) {&lt;br /&gt;       next if ( $str =~ /^revoke/ || $str =~ /^$/);&lt;br /&gt;&lt;br /&gt;       if ( $str =~ /^create table/ ) {&lt;br /&gt;           $o_start=1;&lt;br /&gt;       }&lt;br /&gt;       if ( $str =~ /(.*extent size )(.*)( next size )(.*)( lock mode.*)/ ) {&lt;br /&gt;           #$str = $1.$o_extent_size.$3.$o_next_extent_size.$5."\n";&lt;br /&gt;           $str = ") in $dbs{$a_para[0]} extent size $o_extent_size next size $o_next_extent_size; \n";&lt;br /&gt;&lt;br /&gt;       }&lt;br /&gt;       $o_dbschema .= $str if( $o_start);&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   return $o_dbschema;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub SQL{&lt;br /&gt;   my @sql = @_;&lt;br /&gt;&lt;br /&gt;   my ($str, @a_str, $first_column, %h_data, @a_data);&lt;br /&gt;   &lt;br /&gt;   open S,"echo '$sql[0]' | dbaccess $conf{db} 2&amp;rsaquo;1|";&lt;br /&gt;   while(&amp;lsaquo;S&amp;rsaquo;) {&lt;br /&gt;       $str=$_;&lt;br /&gt;       chomp $str;&lt;br /&gt;       next if ($str eq '');&lt;br /&gt;       @a_str=split(' ',$str);&lt;br /&gt;       # determine the first column name&lt;br /&gt;       $first_column = $a_str[0] if (!$first_column);&lt;br /&gt;&lt;br /&gt;       if ( $first_column eq $a_str[0] ) {&lt;br /&gt;           $a_data[++$#a_data] = {%h_data} if (%h_data);&lt;br /&gt;           undef %h_data;&lt;br /&gt;       }&lt;br /&gt;       $h_data{$a_str[0]} = $a_str[1];&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;   close S;&lt;br /&gt;   $a_data[++$#a_data] = {%h_data} if (%h_data);&lt;br /&gt;   undef %h_data;&lt;br /&gt;&lt;br /&gt;   return @a_data;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;# check input parameters&lt;br /&gt;sub chk_para {&lt;br /&gt;&lt;br /&gt;   # d database is needed&lt;br /&gt;   &amp;help if $#ARGV &amp;lsaquo; 1 ;&lt;br /&gt;&lt;br /&gt;   my ($i);&lt;br /&gt;   # analytics parameters&lt;br /&gt;   for ( $i=0; $i&amp;lsaquo;= $#ARGV; $i++ ) {&lt;br /&gt;       # database name&lt;br /&gt;       if ( $ARGV[$i] eq '-d' ) {&lt;br /&gt;           $i++ ;&lt;br /&gt;           $conf{db} = $ARGV[$i] ;&lt;br /&gt;           next ;&lt;br /&gt;       }&lt;br /&gt;&lt;br /&gt;       # table name&lt;br /&gt;       if ( $ARGV[$i] eq '-t' ) {&lt;br /&gt;           $i++ ;&lt;br /&gt;           $conf{table} = $ARGV[$i] ;&lt;br /&gt;           next ;&lt;br /&gt;       }&lt;br /&gt;&lt;br /&gt;       # output file name&lt;br /&gt;       if ( $ARGV[$i] eq '-o' ) {&lt;br /&gt;           $i++;&lt;br /&gt;           $conf{output} = $ARGV[$i] ;&lt;br /&gt;           next ;&lt;br /&gt;       }&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   &amp;help if ( $conf{db} eq '' )  ;&lt;br /&gt;&lt;br /&gt;   $conf{table} = "ALL" if ( $conf{table} eq '' ) ;&lt;br /&gt;&lt;br /&gt;   print 'Database: '. $conf{db} ."\n" ;&lt;br /&gt;   print '   Table: '. $conf{table} ."\n" ;&lt;br /&gt;   print '    File: '. $conf{output} ."\n" ;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub help {&lt;br /&gt;   print '&lt;br /&gt;   usage:&lt;br /&gt;   estimate_table_extent_size.pl -d DBNAME [-t TABLE_NAME] [-o FILENAME]&lt;br /&gt;   -d      database name, required.&lt;br /&gt;   -t      table name or all tables.&lt;br /&gt;   -o      output file name or stnad output.&lt;br /&gt;   ' ;&lt;br /&gt;   print "\n" ;&lt;br /&gt;   exit ;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub err() {&lt;br /&gt;   print "@_\n";&lt;br /&gt;   exit;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-7204548059480445197?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2009/06/informix-ids-94-table-dbschema.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-7183030077607525039</guid><pubDate>Tue, 16 Jun 2009 01:09:00 +0000</pubDate><atom:updated>2009-06-16T16:11:00.309+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>start</category><category domain='http://www.blogger.com/atom/ns#'>bat</category><category domain='http://www.blogger.com/atom/ns#'>ssh</category><category domain='http://www.blogger.com/atom/ns#'>putty</category><title>SSH command line connect Session Name</title><description>每天上班的第一件事就是連線到主機，查看各台主機的狀況，&lt;div&gt;而且一次就要連線數台以上！一直要點 putty，然後選 session，&lt;/div&gt;&lt;div&gt;有點煩！後來想說，寫一個批次檔好了，&lt;/div&gt;&lt;div&gt;那要可以選 session 啊，&lt;/div&gt;&lt;div&gt;putty  有一個 -load "Session Name" ，裡頭就可以填入自己建立的 session name,&lt;/div&gt;&lt;div&gt;所以就寫了一個批次檔，&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;start C:\Users\putty\putty.exe -load "Session1"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;ping -n 5 localhost &gt; nul &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;start C:\Users\putty\putty.exe -load "Session2"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;ping -n 5 localhost &gt; nul&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;start C:\Users\putty\putty.exe -load "Session3"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;ping -n 5 localhost &gt; nul&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;start C:\Users\putty\putty.exe -load "Session4"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;ping -n 5 localhost &gt; nul&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;start C:\Users\putty\putty.exe -load "Session5"&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;ping -n 5 localhost &gt; nul&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-7183030077607525039?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2009/06/ssh.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-3489561772820083135</guid><pubDate>Wed, 29 Oct 2008 09:34:00 +0000</pubDate><atom:updated>2008-10-29T17:56:32.786+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>滑鼠右鍵</category><category domain='http://www.blogger.com/atom/ns#'>awk</category><category domain='http://www.blogger.com/atom/ns#'>oncontextmenu</category><category domain='http://www.blogger.com/atom/ns#'>onDragStart</category><category domain='http://www.blogger.com/atom/ns#'>onSelectStart</category><title>鎖網頁的滑鼠右鍵功能</title><description>總有一些人，明明網頁要給人家看，但是卻怕圖片被 COPY 走，這種心態真不知該怎麼說!!&lt;br /&gt;&lt;br /&gt;在 html 的 ‹body›  tag 中，加入三個東東，大致上就能使滑鼠的右鍵就能失效！&lt;br /&gt;onDragStart="return false"&lt;br /&gt;oncontextmenu="return false"&lt;br /&gt;onSelectStart="return false"&lt;br /&gt;這三個是什麼意義，請自個兒去查！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;另外因為要大量改檔，底下的 awk 語法，可以瞬間改掉一個目錄下的所有  .htm！&lt;br /&gt;awk 'BEGIN{LastFname="";} {sub( "‹ body","‹ body onDragStart=\"return false\" oncontextmenu=\"return false\" onSelectStart=\"return false\" ",$0); newfile=FILENAME".new"; print › newfile ;} FNR==1 {if (LastFname !=""){print "mv",LastFname".new",LastFname|"sh";} LastFname=FILENAME;} END {print "mv",newfile,FILENAME|"sh";}' *.htm&lt;br /&gt;&lt;br /&gt;至於要底下目錄也要去找的話，可能得搭配其它的命令，如 find 等！請自行研究！&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-3489561772820083135?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2008/10/blog-post.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-2381409337995636380</guid><pubDate>Wed, 01 Oct 2008 03:50:00 +0000</pubDate><atom:updated>2008-10-01T14:30:04.372+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>procmail</category><category domain='http://www.blogger.com/atom/ns#'>sendmail</category><category domain='http://www.blogger.com/atom/ns#'>TrustedUser</category><category domain='http://www.blogger.com/atom/ns#'>procmailrc</category><title>Procmail, Procmailrc 實現一個USER的 email 平均轉寄給三個 email</title><description>因工作上的需求，須要將一個user 的信件平均分給另外三個 email，在此利用 procmail 來做這個功能。&lt;br /&gt;&lt;br /&gt;主機的上的 mail server 要啟動 procmail 的功能。&lt;br /&gt;&lt;br /&gt;在該 user 的 home directory 下，新增一個  .procmailrc！檔案中放入下面幾行&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-size:85%;" &gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;SHELL=/bin/sh&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;LINEBUF=8192&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;VERBOSE=0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;MAILTO=`/home/user/relay_mail`&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;:0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;* &gt;1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;! $MAILTO&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;其中 relay_mail 是一個程式，它負責丟出一個 email  出來，也就是平均寄送三個 email 中的其中一個，是由它計算出來的！&lt;br /&gt;&lt;br /&gt;在我的環境中，這樣子的運作時，會發生一個錯誤(需把 procmail log 打開，比較好抓錯誤)，&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Program mode requires special privileges, e.g., root or TrustedUser.&lt;/span&gt;&lt;br /&gt;這個會寫在 procmail log 中，而這裡頭的 Program 實際上是指 sendmail！&lt;br /&gt;為何是 sendmail 呢？&lt;br /&gt;&lt;br /&gt;因為在 procmailrc 的設定檔中， ! $MAILTO 是把信件轉到 $MAILTO 這個信箱，而它完整的&lt;br /&gt;轉換語法是這樣的(假設 $MAILTO=user@user.com)：&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;/usr/sbin/sendmail -oi user@user.com&lt;/span&gt;&lt;br /&gt;最後是用 sendmail 來進行寄送的動作。(我的 sendmail  版本是 8.13.1)&lt;br /&gt;而 sendmail 的 mail queue 是在 /var/spool/clientmqueue，&lt;br /&gt;這一個目錄的權限是 770, user:group 都是 smmsp，而現在是讓一個 user 來進行這一個動作，&lt;br /&gt;所以會產生上面的錯誤！&lt;br /&gt;&lt;br /&gt;還不知道怎麼把 該  user 加入 TrustedUser，只好先將該 user 的 group 改成 smmsp。&lt;br /&gt;這樣就可以把信轉出去了！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;附上 relay_mail 的程式，user perl 寫的！&lt;br /&gt;其中還需要一個設定檔， relay_mail.data&lt;br /&gt;這就是用來記錄要分給哪些人，還有分配的比例，長相如下：&lt;br /&gt;&lt;span style="font-family:arial;"&gt;user1@user.com#1#0 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;user2@user.com#1#0  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;user3@user.com#2#0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;最後一個 0 是記錄分送的數字&lt;/span&gt;，每寄出一封信，數字會增加 1！&lt;br /&gt;第二的欄位數子，是比例， user3 會分配到的數字會是其它兩人的兩倍。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;my $debug=0;&lt;br /&gt;my ($o_dir, $o_mail_data, @oh_mails, $oa_alldata, $o_data, @oa_data, $o_min_mails, $o_mails, $o_mailto);&lt;br /&gt;$o_dir = '/home/sourcing';&lt;br /&gt;$o_mail_data = "$o_dir/relay_mail.data";&lt;br /&gt;&lt;br /&gt;$o_min_mails=99999999;&lt;br /&gt;open MD,$o_mail_data;&lt;br /&gt;while(&lt;md&gt;) {&lt;br /&gt;   chomp $_;&lt;br /&gt;   push @oa_alldata,$_;&lt;br /&gt;   next if ( $_ =~ /^#/ );&lt;br /&gt;   @oa_data = split('#',$_);&lt;br /&gt;   $o_mails = $oa_data[2]/$oa_data[1];&lt;br /&gt;   db($o_mails);&lt;br /&gt;   if ( $o_mails &lt; $o_min_mails ) {         $o_mailto = $oa_data[0];         $o_min_mails = $o_mails;     } } close MD; open MD,"&gt;$o_mail_data";&lt;br /&gt;foreach(@oa_alldata) {&lt;br /&gt;   $o_data = $_;&lt;br /&gt;   if ($o_data =~ /^$o_mailto/ ) {&lt;br /&gt;       @oa_data = split('#',$o_data);&lt;br /&gt;       $oa_data[2] +=1;&lt;br /&gt;       $o_data = join('#',@oa_data);&lt;br /&gt;   }&lt;br /&gt;   print MD $o_data."\n";&lt;br /&gt;}&lt;br /&gt;close MD;&lt;br /&gt;print "$o_mailto\n";&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;sub db{&lt;br /&gt;   print "DEBUG:@_\n" if ( $debug);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/md&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-2381409337995636380?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2008/10/procmail-procmailrc-user-email-email.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-705097646862025094</guid><pubDate>Mon, 05 May 2008 02:59:00 +0000</pubDate><atom:updated>2008-05-05T12:05:17.141+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>cdrom、autorun</category><title>常見的 Autorun 寫法</title><description>&lt;table cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt; &lt;div id="textstyle_3" style="overflow: hidden; font-size: 9pt; text-indent: 0px;"&gt;    &lt;strong&gt;常見的 Autorun 寫法&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong style="color: rgb(0, 0, 153);"&gt;A. 光碟置入後自動啟動執行檔&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;準備檔案 icon.ico, some.exe&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;autorun.inf&lt;/span&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(228, 228, 228); color: rgb(0, 0, 153);"&gt;[autorun]&lt;br /&gt;label=光碟名稱&lt;br /&gt;icon=icon.ico&lt;br /&gt;open=some.exe&lt;/div&gt;&lt;br /&gt;&lt;strong style="color: rgb(0, 0, 153);"&gt;B. 光碟置入後自動啟動 flash&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;準備檔案 icon.ico, flash.exe &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;autorun.inf&lt;/span&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(228, 228, 228); color: rgb(0, 0, 153);"&gt;[autorun]&lt;br /&gt;label=光碟名稱&lt;br /&gt;icon=icon.ico&lt;br /&gt;open=flash.exe&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;strong style="color: rgb(0, 0, 153);"&gt;C. 光碟置入後自動開啟網頁&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;準備檔案 icon.ico, index.html&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;autorun.inf&lt;/span&gt;&lt;br /&gt;&lt;div style="padding: 10px; background-color: rgb(228, 228, 228); color: rgb(0, 0, 153);"&gt;[autorun]&lt;br /&gt;label=光碟名稱&lt;br /&gt;icon=icon.ico&lt;br /&gt;open=command /c start index.html&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;若要執行多層目錄，寫法如下：（開啟資料夾 data 裡的 setup.exe）&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;open=data\setup.exe&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-705097646862025094?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2008/05/autorun.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-7411743120331699503</guid><pubDate>Fri, 16 Nov 2007 03:28:00 +0000</pubDate><atom:updated>2007-11-16T11:30:10.163+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>ie</category><category domain='http://www.blogger.com/atom/ns#'>player</category><category domain='http://www.blogger.com/atom/ns#'>media</category><category domain='http://www.blogger.com/atom/ns#'>html</category><title>Embedding Windows Media Player</title><description>sources: http://www.mioplanet.com/rsc/embed_mediaplayer.htm&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To embed an object in HTML document, the object class ID is required.  The class ID for Windows Media Player 7, 9, 10 and 11 is clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6.&lt;br /&gt;&lt;br /&gt; Insert the following code into your HTML document to embed Windows Media Player 7 and later:&lt;br /&gt;  &lt;br /&gt; &lt;textarea style="font-size: 11px;" rows="12" cols="64"&gt;&lt;object id="VIDEO" width="320" height="240" style="position:absolute; left:0;top:0;" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" type="application/x-oleobject"&gt;    &lt;param name="URL" value="your file or url"&gt;  &lt;param name="SendPlayStateChangeEvents" value="True"&gt;  &lt;param name="AutoStart" value="True"&gt;  &lt;param name="uiMode" value="none"&gt;  &lt;param name="PlayCount" value="9999"&gt; &lt;/object&gt;&lt;/textarea&gt;  &lt;br /&gt;&lt;br /&gt; In the URL parameter, you can specify a URL (for streaming) or a local file.&lt;br /&gt;&lt;br /&gt; If you are using a &lt;a href="http://www.mioplanet.com/rsc/create_mio.htm"&gt;&lt;u&gt;Mio generator&lt;/u&gt;&lt;/a&gt;, you should include the video file in your application.   Including video reduce bandwidth usage and bring a better user experience.  &lt;br /&gt;&lt;br /&gt; Most important parameters supported by Windows Media Player 7 and later:  &lt;br /&gt;&lt;br /&gt;  &lt;table class="default" bgcolor="#dddddd" border="0" cellpadding="5" cellspacing="1" width="100%"&gt;   &lt;tbody&gt;&lt;tr&gt;     &lt;th align="left" width="100"&gt;Parameter&lt;/th&gt;     &lt;th align="left" width="50"&gt;Default&lt;/th&gt;     &lt;th align="left"&gt;Description&lt;/th&gt;   &lt;/tr&gt;    &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;autoStart&lt;/td&gt;     &lt;td&gt;true&lt;/td&gt;     &lt;td&gt;Specifies or retrieves a value indicating whether the current media item begins playing automatically.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;balance&lt;/td&gt;     &lt;td&gt;0&lt;/td&gt;     &lt;td&gt;Specifies the current stereo balance.&lt;br /&gt;Values range from �100 to 100.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;baseURL&lt;/td&gt;     &lt;td&gt;&lt;br /&gt;&lt;/td&gt;     &lt;td&gt;Specifies the base URL used for relative path resolution with URL script commands that are embedded in media items.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;captioningID&lt;/td&gt;     &lt;td&gt;0&lt;/td&gt;     &lt;td&gt;Specifies the name of the element displaying the captioning.&lt;/td&gt;   &lt;/tr&gt;    &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;currentMarker&lt;/td&gt;     &lt;td&gt;0&lt;/td&gt;     &lt;td&gt;Specifies the current marker number.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;currentPosition&lt;/td&gt;     &lt;td&gt;0&lt;/td&gt;     &lt;td&gt;Specifies the current position in the media item in seconds.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;defaultFrame&lt;/td&gt;     &lt;td&gt;-&lt;/td&gt;     &lt;td&gt;Specifies the name of the frame used to display a URL.&lt;/td&gt;   &lt;/tr&gt; &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;enableContextMenu&lt;/td&gt;     &lt;td&gt;true&lt;/td&gt;     &lt;td&gt;Specifies a value indicating whether to enable the context menu, which appears when the right mouse button is clicked.&lt;/td&gt;   &lt;/tr&gt;  &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;enabled&lt;/td&gt;     &lt;td&gt;false&lt;/td&gt;     &lt;td&gt;Specifies whether the Windows Media Player control is enabled.&lt;/td&gt;   &lt;/tr&gt;   &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;fullScreen&lt;/td&gt;     &lt;td&gt;false&lt;/td&gt;     &lt;td&gt;Specifies whether video content is played back in full-screen mode.&lt;/td&gt;   &lt;/tr&gt;    &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;InvokeURLs&lt;/td&gt;     &lt;td&gt;true&lt;/td&gt;     &lt;td&gt;Specifies a value indicating whether URL events should launch a Web browser.&lt;/td&gt;   &lt;/tr&gt;   &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;Mute&lt;/td&gt;     &lt;td&gt;false&lt;/td&gt;     &lt;td&gt;Specifies if audio is muted.&lt;/td&gt;   &lt;/tr&gt;   &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;PlayCount&lt;/td&gt;     &lt;td&gt;1&lt;/td&gt;     &lt;td&gt;Specifies the number of times a media item will play. Minimum value of one.&lt;/td&gt;   &lt;/tr&gt;    &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;Rate&lt;/td&gt;     &lt;td&gt;1.0&lt;/td&gt;     &lt;td&gt;Specifies the playback rate.&lt;br /&gt;0.5 equates to half  the normal playback speed, 2 equates to twice.&lt;/td&gt;   &lt;/tr&gt;    &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;stretchToFit&lt;/td&gt;     &lt;td&gt;false&lt;/td&gt;     &lt;td&gt;Specifies whether video displayed by the control automatically sizes to fit the video window, when the video window is larger than the dimensions of the video image.&lt;/td&gt;   &lt;/tr&gt; &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;uiMode&lt;/td&gt;     &lt;td&gt;full&lt;/td&gt;     &lt;td&gt;Specifies which controls are shown in the user interface.&lt;br /&gt;Possible values: invisible, none, mini, full.&lt;/td&gt;   &lt;/tr&gt;      &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;URL&lt;/td&gt;     &lt;td&gt;-&lt;/td&gt;     &lt;td&gt;Specifies the name of the media item to play.&lt;br /&gt;You can specify a local filename or a URL.&lt;/td&gt;   &lt;/tr&gt;      &lt;tr bgcolor="#eeeeee"&gt;     &lt;td&gt;Volume&lt;/td&gt;     &lt;td&gt;Last setting&lt;/td&gt;     &lt;td&gt;Zero specifies no volume and 100 specifies full volume.&lt;/td&gt;   &lt;/tr&gt;     &lt;tr bgcolor="#ffffff"&gt;     &lt;td&gt;windowlessVideo&lt;/td&gt;     &lt;td&gt;false&lt;/td&gt;     &lt;td&gt;Specifies or retrieves a value indicating whether the Windows Media Player control renders video in windowless mode.&lt;br /&gt;When windowlessVideo is set to true, the Player control renders video directly in the client area, so you can apply special effects or layer the video with text.&lt;br /&gt;&lt;i&gt;Supported by Windows Media Player for Windows XP or later.&lt;/i&gt;&lt;/td&gt;   &lt;/tr&gt;      &lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-7411743120331699503?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2007/11/embedding-windows-media-player.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-3764551009520554936</guid><pubDate>Fri, 12 Oct 2007 09:49:00 +0000</pubDate><atom:updated>2007-10-12T18:01:23.021+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>MU muti user wordpress</category><title>Install Muti User WordPress</title><description>&lt;h1&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-size:6;"&gt;Install Muti User WordPress&lt;/span&gt; &lt;/span&gt;&lt;/h1&gt; &lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;see http://mu.wordpress.org/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;這個網站就是專門發展多人用的 WordPress 版本。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;http://trac.mu.wordpress.org/browser/trunk/README.txt&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;這一個 readme 要先看完才知道要怎麼安裝成多人版。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;底下我也附了一份說明！&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;說明中提到了要有一些必備的環境，簡單說明一下:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;一、about apache web server&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;    1. apache webserver 需支援到 mod_rewrite, 不管你是 compile 到 httpd or 用 LoadModule 的方式。&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;    2. &lt;directory&gt; 需將 AllowOverride None  改成  AllowOverride FileInfo Options。&lt;/directory&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;    3. &lt;virtusalhost&gt; 中，需加入 ServerAlias *.yourblog.domain，因為我是想裝成  aaaa.&lt;/virtusalhost&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;, bbbb.&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt; 等 sub domain 型式，而不是 sub directory 型式。&lt;br /&gt;&lt;br /&gt;二、about DNS&lt;br /&gt; 1. 既然是要裝成 sub domain，那你的 DNS 當然要設定成 wildcard record。&lt;br /&gt; $ORIGIN &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain.&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;&lt;br /&gt; blog                    A       1.2.3.4&lt;br /&gt; $ORIGIN &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;.&lt;br /&gt; *                       CNAME   blog.&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;.&lt;br /&gt;&lt;br /&gt;三、about PHP.ini&lt;br /&gt; 1. 修改 php.ini 的幾個值&lt;br /&gt; register_globals = off  ; 不使用 GLOBAL variables&lt;br /&gt; display_errors = off    ; 不顯示 php 的錯誤在網頁上&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;memory_limit = 64M      ; 預設的太小， MU WordPress 建議改大一點&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;&lt;br /&gt;&lt;/span&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;四、create database for MU WordPress&lt;/span&gt;&lt;/p&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;     1. 這一個 MU 的做法是在一個 DB 裡頭為每一個 BLOG 建立不同名稱的 TABLE，用 ID 漸增。所以要先建一個 database 和開一個 account，這一個 account 是對這一個 DB 有完整的 privileges。&lt;/span&gt;&lt;/p&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;     2. 用 root 登入之後，下SQL語法建立 DB。&lt;/span&gt;&lt;/p&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;           &lt;/span&gt;&lt;span style="font-size:130%;"&gt;create database wp_dbname defalut charset utf8;&lt;/span&gt;&lt;/p&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;      這裡會先指定成 utf8 是因為我在第一次安裝時 MU 時，結果雖然在 wp-config.php 有明確設定 DB_CHARSET 為 utf8，但是 MU 所建立的 table 卻都還是 latin1。這樣會造成無法正常輸入 big5。找不到原因，所以我干脆在建 DB 時就給它預設值，這樣所建立的 TABLE 就都是 utf8 了。&lt;/span&gt;&lt;/p&gt; &lt;p  style="font-family:MingLiU,細明體,serif;"&gt;&lt;span style="font-size:130%;"&gt;      建立 USER 跟給 privileges，&lt;br /&gt;&lt;/span&gt;&lt;/p&gt; &lt;span style="font-size:130%;"&gt;&lt;span style="font-family:MingLiU,細明體,serif;"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;GRANT ALL PRIVILEGES ON wp_dbname.* TO 'wp_username&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;'@'localhost' IDENTIFIED BY 'pwd_connect_db' WITH GRANT OPTION;&lt;br /&gt;   立即生效 privileges，&lt;br /&gt;   FLUSH PRIVILEGES;&lt;br /&gt;&lt;br /&gt;五、install MU WordPress&lt;br /&gt; 1. 把 download 到的 sources 解開來，將所有檔案複製到 blog.&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;的 DocumentRoot( 設定在 /wordpress/blog )。&lt;br /&gt; 2. &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;目錄都是的 owner,group 都是 root 沒關係。只要在安裝前先改兩個權限就好。&lt;br /&gt;     &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;chmod 777 /wordpress/blog /wordpress/blog/wp-content&lt;br /&gt;     記得安裝完要改回成 755&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;    3. 完成已上動作之後，從 browser 執行安裝。 http://blog.&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;yourblog.domain&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;/index.php 然後照著上面的步驟填入相關資訊即可完成安裝。&lt;br /&gt; 4. 裝完之後，目錄權限改回。&lt;br /&gt;     chmod 755 &lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;/wordpress/blog /wordpress/blog/wp-content&lt;br /&gt;     要這樣改來改去是因為，網頁的安裝會產生兩個檔案和一個目錄&lt;br /&gt;     wp-config.php, .htaccess , wp-contnet/blogs.dir&lt;br /&gt;&lt;br /&gt;     wp-config.php&lt;br /&gt;     如果安裝個人版 wordpress，wp-config.php 是解開SOURCES 就會有的檔案，但是多人版是沒有的，上述的 DB_CHARSET 在個人版也是沒有的問題，但是 MU 就會有。我在猜可能跟這一個 wp-config.php 有關。&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:MingLiU,細明體,serif;font-size:130%;"  &gt;&lt;br /&gt;     .htaccess&lt;br /&gt;     這一個檔案在做 sub domain 網址的 mod_rewrite。所以它是不會去動到 apache 的 httpd.conf&lt;br /&gt;&lt;br /&gt;     blogs.dir&lt;br /&gt;     則是要放其它 blog 的個人檔案用的。如圖片等。&lt;br /&gt;&lt;br /&gt;以上，這樣就裝完基本的 MU WordPress 了。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;---------------------------------- 官網的說明文件 -----------------------------------------------------&lt;br /&gt;WordPress Multi User&lt;br /&gt;--------------------&lt;br /&gt;&lt;br /&gt;WordPress MU is a multi user version of WordPress.&lt;br /&gt;&lt;br /&gt;If you're not comfortable editing PHP code, taking care of a complex&lt;br /&gt;webserver and database system and being pro-active about following&lt;br /&gt;developments of this project then run, don't walk, to&lt;br /&gt;http://wordpress.com/ and sign yourself and your friends up to free blogs.&lt;br /&gt;It's easier in the long run and you'll save yourself a lot of pain&lt;br /&gt;and angst.&lt;br /&gt;&lt;br /&gt;Apache&lt;br /&gt;======&lt;br /&gt;Apache must be configured so that mod_rewrite works. Here are&lt;br /&gt;instructions for Apache 2. Apache 1.3 is very similar.&lt;br /&gt;&lt;br /&gt;1. Make sure a line like the following appears in your httpd.conf&lt;br /&gt;LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so&lt;br /&gt;&lt;br /&gt;2. In the &lt;directory&gt; directive of your virtual host, look for this&lt;br /&gt;line&lt;br /&gt;"AllowOverride None"&lt;br /&gt;and change it to&lt;br /&gt;"AllowOverride FileInfo Options"&lt;br /&gt;&lt;br /&gt;3. In the &lt;virtualhost&gt; section of the config file for your host there&lt;br /&gt;will be a line defining the hostname. You need to add the following&lt;br /&gt;if you want virtual hosts to work properly:&lt;br /&gt;"ServerAlias *.domain.tld"&lt;br /&gt;Replace domain.tld with whatever your one is, and remove the quotes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DNS&lt;br /&gt;===&lt;br /&gt;If you want to host blogs of the form http://blog.domain.tld/ where&lt;br /&gt;domain.tld is the domain name of your machine then you must add a&lt;br /&gt;wildcard record to your DNS records.&lt;br /&gt;This usually means adding a "*" hostname record pointing at your&lt;br /&gt;webserver in your DNS configuration tool.&lt;br /&gt;Matt has a more detailed explanation:&lt;br /&gt;http://photomatt.net/2003/10/10/wildcard-dns-and-sub-domains/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PHP&lt;br /&gt;===&lt;br /&gt;1. Don't display error messages to the browser. This is almost always&lt;br /&gt;turned off but sometimes when you're testing you turn this on and forget&lt;br /&gt;to reset it.&lt;br /&gt;&lt;br /&gt;2. If your PHP is compiled with memory limit checks, the default is 8MB&lt;br /&gt;which is much too small. You should increase this to at least 32MB or 64MB&lt;br /&gt;to avoid PHP out of memory errors. Look for "memory_limit" in your php.ini&lt;br /&gt;file.&lt;br /&gt;&lt;br /&gt;3. GLOBAL variables must be turned off. This is one of the first things&lt;br /&gt;any security aware admin will do. These days the default is for it to&lt;br /&gt;be off!&lt;br /&gt;&lt;br /&gt;The easiest way of configuring it is via the .htaccess file that is&lt;br /&gt;created during the install. If you haven't installed WPMU yet then edit&lt;br /&gt;the file htaccess.dist in this directory and add these two lines at the&lt;br /&gt;top:&lt;br /&gt;&lt;br /&gt;php_flag register_globals 0&lt;br /&gt;php_flag display_errors 0&lt;br /&gt;&lt;br /&gt;This is NOT included in that file by default because it doesn't work on&lt;br /&gt;all machines. If it doesn't work on your machine, you'll get a cryptic&lt;br /&gt;"500 internal error" after you install WPMU. To remove the offending lines&lt;br /&gt;just edit the file ".htaccess" in your install directory and you'll see&lt;br /&gt;them at the top. Delete and save the file again.&lt;br /&gt;Read here for how to enable this: http://ie.php.net/configuration.changes&lt;br /&gt;&lt;br /&gt;If you don't want to edit your .htaccess file then you need to change your&lt;br /&gt;php.ini. It's beyond the scope of this README to know exactly where it is&lt;br /&gt;on your machine, but if you're on a shared hosted server you probably&lt;br /&gt;don't have access to it as it requires root or administrator privileges&lt;br /&gt;to change.&lt;br /&gt;&lt;br /&gt;If you do have root access, try "locate php.ini" or check in:&lt;br /&gt;&lt;br /&gt;/etc/php4/apache2/php.ini&lt;br /&gt;/usr/local/lib/php.ini&lt;br /&gt;&lt;br /&gt;Once you have opened your php.ini, look for the sections related to&lt;br /&gt;register_globals and display_errors. Make sure both are Off like so:&lt;br /&gt;&lt;br /&gt;display_errors = Off&lt;br /&gt;register_globals = Off&lt;br /&gt;&lt;br /&gt;You'll have to restart Apache after you modify your php.ini for the&lt;br /&gt;settings to be updated.&lt;br /&gt;&lt;br /&gt;4. If you want to restrict blog signups, set the restrict domain email&lt;br /&gt;setting in the admin.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Install&lt;br /&gt; =======&lt;br /&gt; 1. Download and unzip the WordPress MU package, if you haven't already.&lt;br /&gt;    The unzipped files will be created in a directory named "wordpressmu"&lt;br /&gt;    followed by a version number.&lt;br /&gt; 2. Create a database for WordPress MU on your web server, as well as a&lt;br /&gt;    MySQL user who has all privileges for accessing and modifying it.&lt;br /&gt; 3. Place the WordPress MU files in the desired location on your web server:&lt;br /&gt;    * If you want to integrate WordPress MU into the root of your&lt;br /&gt;      domain (e.g. http://example.com/), move or upload all the files and&lt;br /&gt;      directories of the unzipped WordPress MU directory into the root&lt;br /&gt;      directory of your web server.&lt;br /&gt;    * If you want to have your WordPress MU installation in its own&lt;br /&gt;      subdirectory on your web site (e.g. http://example.com/blogs/),&lt;br /&gt;      rename the directory wordpressmu to the name you'd like the&lt;br /&gt;      subdirectory to have and move or upload it to your web server.&lt;br /&gt;      For example if you want the WordPress MU installation in a&lt;br /&gt;      subdirectory called "blog", you should rename the directory called&lt;br /&gt;      "wordpressmu" to "blogs" and upload it to the root directory of your&lt;br /&gt;      web server.&lt;br /&gt; 4. Make sure your install directory and the wp-contents directory are&lt;br /&gt;    writeable by the webserver.&lt;br /&gt; 5. Run the WordPress MU installation script by accessing index.php&lt;br /&gt;    in your favorite web browser.&lt;br /&gt;    * If you installed WordPress MU in the root directory, you should&lt;br /&gt;      visit: http://example.com/index.php&lt;br /&gt;    * If you installed WordPress MU in its own subdirectory called&lt;br /&gt;      blogs, for example, you should visit: http://example.com/blogs/index.php&lt;br /&gt; (Adapted from http://codex.wordpress.org/Installing_WordPress)&lt;br /&gt;&lt;br /&gt; If you're upgrading, skip to the end of this document.&lt;br /&gt;&lt;br /&gt; ERROR LOGGING&lt;br /&gt; =============&lt;br /&gt; If you are developing a site based on WPMU it is recommended that you&lt;br /&gt; turn on PHP error logging. Look in your php.ini for the section marked&lt;br /&gt; "Error handling and logging" where you can configure it.&lt;br /&gt;&lt;br /&gt; Mysql database errors are logged to the PHP error log if enabled or it&lt;br /&gt; can also send error reports to a file of your choice. After installing,&lt;br /&gt; edit wp-config.php and define a constant, "ERRORLOGFILE", pointing at&lt;br /&gt; your MySQL error log. This file must be writeable by your webserver.&lt;br /&gt; Please don't log to a file visible by your webserver or people may&lt;br /&gt; figure out they can download it.&lt;br /&gt; Example definition:&lt;br /&gt; define( "ERRORLOGFILE", "/tmp/mysql.log" );&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; UPGRADING&lt;br /&gt; =========&lt;br /&gt; Please see this page for instructions on upgrading your install:&lt;br /&gt; http://trac.mu.wordpress.org/wiki/UpgradingWpmu&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; Support Forum and Bug Reports&lt;br /&gt; =============================&lt;br /&gt; Please read http://trac.mu.wordpress.org/wiki/DebuggingWpmu before&lt;br /&gt; asking any questions. Without all the information required there&lt;br /&gt; we'll just ask for it anyway or worse, your request will be ignored.&lt;br /&gt;&lt;br /&gt; http://mu.wordpress.org/forums/&lt;br /&gt;&lt;br /&gt; Trac is our bug tracking system. Again, please read the above link&lt;br /&gt; before submitting a bug report.&lt;br /&gt; http://trac.mu.wordpress.org/report/1&lt;br /&gt;&lt;br /&gt; You can login to both sites using your wordpress.org username and&lt;br /&gt; password.&lt;br /&gt;&lt;br /&gt; http://mu.wordpress.org/&lt;br /&gt;&lt;br /&gt;&lt;/virtualhost&gt;&lt;/directory&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-3764551009520554936?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2007/10/install-muti-user-wordpress.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-716719368432777936</guid><pubDate>Thu, 13 Sep 2007 06:43:00 +0000</pubDate><atom:updated>2007-09-13T14:51:08.498+08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>javascript 踩地雷小遊戲</category><title>用 javascript 寫出來的踩地雷遊戲</title><description>底下是整個用 javascript 寫出來的一個採地雷的遊戲！&lt;br /&gt;運用了一些 DOM 來控制一些東西。&lt;br /&gt;下一個是想用 javascript 物件來寫俄羅斯方塊。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;Bombs&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;script&amp;gt;&lt;br /&gt;var MaxBombs=0;&lt;br /&gt;var X=0;&lt;br /&gt;var Y=0;&lt;br /&gt;var BombsArray = new Array();&lt;br /&gt;var oBombsBody;&lt;br /&gt;var traceLevel=0;&lt;br /&gt;var nonOpenColor = 'C0C0C0';&lt;br /&gt;var OpenColor = '707070';&lt;br /&gt;var OpenColorFireFox = 'rgb(112, 112, 112) none repeat scroll 0% 0%';&lt;br /&gt;&lt;br /&gt;function NewGame() {&lt;br /&gt;    &lt;br /&gt;    ClearBombs(oBombsBody);&lt;br /&gt;&lt;br /&gt;    // 亂數取出炸彈位置,存入陣列&lt;br /&gt;    var oXY;&lt;br /&gt;    while(BombsArray.length&amp;lt;MaxBombs) {&lt;br /&gt;        while(!oXY) {&lt;br /&gt;            oXY='';&lt;br /&gt;            oXY=GetXY();&lt;br /&gt;            &lt;br /&gt;            // check exists&lt;br /&gt;            for(var i=0;i&amp;lt;BombsArray.length;i++) {&lt;br /&gt;                if ( oXY==BombsArray[i] ) {&lt;br /&gt;                    oXY='';&lt;br /&gt;                    break;&lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        BombsArray.push(oXY);&lt;br /&gt;        &lt;br /&gt;        var oaXY = oXY.split('#');&lt;br /&gt;        var tdObj=document.getElementById('x'+oaXY[0]+'y'+oaXY[1]);&lt;br /&gt;        // tdObj.innerHTML='X';&lt;br /&gt;        tdObj.className='bomb';&lt;br /&gt;        tdObj.tag='X';&lt;br /&gt;        tdObj.style.color='red';&lt;br /&gt;        oXY='';&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    // 開始填入其它格子內的數字，包含 零&lt;br /&gt;    for( var i=1;i&amp;lt;=Y;i++) {&lt;br /&gt;        for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;            var tdObj=document.getElementById('x'+j+'y'+i);&lt;br /&gt;            tdObj.style.background='#'+nonOpenColor;&lt;br /&gt;            tdObj.innerHTML='&amp;nbsp;';&lt;br /&gt;            if ( tdObj.tag != 'X' ) {&lt;br /&gt;                // 不是炸彈的話，那要開始計算其週圍有幾個炸彈&lt;br /&gt;                var oBombs = CalBombs(j,i);&lt;br /&gt;                tdObj.tag=oBombs;&lt;br /&gt;                tdObj.className='bombs'+oBombs;&lt;br /&gt;                tdObj.style.color=(oBombs==0)?'#'+OpenColor:'black';&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    alert("Enjoy Game!!");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// 計算周圍的炸彈數&lt;br /&gt;function CalBombs(oX,oY){&lt;br /&gt;    // 傳入一個座標點，為九宮格的中心，逐一掃描周圍八格之狀態&lt;br /&gt;    var oBombs=0, newX, newY, otd;&lt;br /&gt;    newX = oX-1&lt;br /&gt;    if ( newX &amp;gt; 0 ) {&lt;br /&gt;        newY=oY;&lt;br /&gt;        if (CheckBomb(newX,newY,'X')) oBombs++;&lt;br /&gt;&lt;br /&gt;        newY=oY-1;&lt;br /&gt;        if ( newY &amp;gt; 0 ){ if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;&lt;br /&gt;        newY=oY+1;&lt;br /&gt;        if ( newY &amp;lt;=Y){ if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    newX = oX+1;&lt;br /&gt;    if ( newX &amp;lt;= X) {&lt;br /&gt;        newY=oY;&lt;br /&gt;        if (CheckBomb(newX,newY,'X')) oBombs++;&lt;br /&gt;&lt;br /&gt;        newY=oY-1;&lt;br /&gt;        if ( newY &amp;gt; 0 ){ if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;&lt;br /&gt;        newY=oY+1;&lt;br /&gt;        if ( newY &amp;lt;=Y){ if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    newX = oX&lt;br /&gt;    newY=oY-1;&lt;br /&gt;    if ( newY &amp;gt; 0 ){ if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;&lt;br /&gt;    newY=oY+1;&lt;br /&gt;    if ( newY &amp;lt;=Y) { if (CheckBomb(newX,newY,'X')) oBombs++;}&lt;br /&gt;    &lt;br /&gt;    return oBombs;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function CheckBomb(oX,oY,oTag) {&lt;br /&gt;    var otd=document.getElementById('x'+oX+'y'+oY);&lt;br /&gt;    if ( otd.tag == oTag ) {&lt;br /&gt;        return true;&lt;br /&gt;    } else {&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function DrawTable(){&lt;br /&gt;    // 先清掉原來的&lt;br /&gt;    while (oBombsBody.rows.length &amp;gt; 0) {&lt;br /&gt;        oBombsBody.deleteRow(0);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    for( var i=1;i&amp;lt;=Y;i++) {&lt;br /&gt;        tr = oBombsBody.insertRow(oBombsBody.rows.length);&lt;br /&gt;        for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;            td = tr.insertCell(tr.cells.length);&lt;br /&gt;            td.id=('x'+j+'y'+i);&lt;br /&gt;            td.innerHTML = '&amp;nbsp';&lt;br /&gt;&lt;br /&gt;            if ( td.addEventListener ) {&lt;br /&gt;                // td.addEventListener("click", OpenBomb, false);&lt;br /&gt;                // td.addEventListener("dblclick", SetBomb, false);&lt;br /&gt;                td.addEventListener("mousedown", SetBomb, false);&lt;br /&gt;            } else {&lt;br /&gt;                // td.setAttribute("onclick", OpenBomb);&lt;br /&gt;                // td.setAttribute("ondblclick", SetBomb);&lt;br /&gt;                td.setAttribute("onmousedown", SetBomb);&lt;br /&gt;            }&lt;br /&gt;        }        &lt;br /&gt;    }    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function SetBomb(oEvent) {&lt;br /&gt;    if ( !oEvent ) { &lt;br /&gt;        oEvent=window.event;&lt;br /&gt;    }&lt;br /&gt;    //var oTdObj = window.event.srcElement.id;&lt;br /&gt;    //var oMouseButton=window.event.button;&lt;br /&gt;    // alert(oEvent);&lt;br /&gt;    var oTdObj, oLeftButton, oRightButton=2;&lt;br /&gt;    if ( oEvent.srcElement ) {&lt;br /&gt;        oTdObj = oEvent.srcElement;&lt;br /&gt;        oLeftButton=1;&lt;br /&gt;    } else {&lt;br /&gt;        oTdObj = oEvent.target;&lt;br /&gt;        oLeftButton=0;&lt;br /&gt;    }&lt;br /&gt;    // alert(oTdObj.id);&lt;br /&gt;    // document.test.str.value = oTdObj.style.background;&lt;br /&gt;    if ( oTdObj.style.background == '#'+OpenColor || oTdObj.style.background == OpenColorFireFox) {&lt;br /&gt;        return ;&lt;br /&gt;    }&lt;br /&gt;    var oMouseButton = oEvent.button;    &lt;br /&gt;    if ( oMouseButton == oLeftButton ) {&lt;br /&gt;        OpenBomb(oTdObj);&lt;br /&gt;    } else if( oMouseButton == oRightButton) {&lt;br /&gt;        MarkBomb(oTdObj);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function OpenBomb(oObj){&lt;br /&gt;    if ( oObj.tag == 'X' ) {&lt;br /&gt;        OpenAll();&lt;br /&gt;        alert('Game Over');&lt;br /&gt;    } else {&lt;br /&gt;        var oaXY= oObj.id.split('y');&lt;br /&gt;        oaXY[0]=oaXY[0].replace(/x/,'');&lt;br /&gt;        // alert('x='+oaXY[0]);alert('Y='+oaXY[1])&lt;br /&gt;        ShowBomb(oaXY[0],oaXY[1]);&lt;br /&gt;        if ( oObj.tag==0) {&lt;br /&gt;            // 檢查週圍是否也是 零&lt;br /&gt;            CheckBomb0(oaXY[0],oaXY[1]);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function MarkBomb(oObj) {&lt;br /&gt;    &lt;br /&gt;    // 右鍵點一次是 mark 點第二次是 unmark&lt;br /&gt;    if ( oObj.innerHTML == 'O' ) {&lt;br /&gt;        oObj.innerHTML = '&amp;nbsp;';&lt;br /&gt;        oObj.style.color= "black";&lt;br /&gt;    } else {&lt;br /&gt;        oObj.innerHTML = 'O';&lt;br /&gt;        oObj.style.color= "green";&lt;br /&gt;    }&lt;br /&gt;    ShowBombsTip();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function CheckBomb0(oX,oY) {&lt;br /&gt;    // 檢查週圍是否也是 零，用遞迴方式&lt;br /&gt;    oX=oX-1+1;&lt;br /&gt;    oY=oY-1+1;&lt;br /&gt;    &lt;br /&gt;    var newX, newY, otd;&lt;br /&gt;    traceLevel++;&lt;br /&gt;    // alert('Trace Level='+traceLevel);&lt;br /&gt;    ShowBomb(oX,oY);&lt;br /&gt;    newX = oX-1&lt;br /&gt;    if ( newX &amp;gt; 0 ) {&lt;br /&gt;        newY=oY; CheckBombStatus(newX,newY);&lt;br /&gt;&lt;br /&gt;        newY=oY-1;&lt;br /&gt;        if ( newY &amp;gt; 0 ) CheckBombStatus(newX,newY);&lt;br /&gt;&lt;br /&gt;        newY=oY+1;&lt;br /&gt;        if ( newY &amp;lt;=Y) CheckBombStatus(newX,newY);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    newX = oX+1;&lt;br /&gt;    if ( newX &amp;lt;= X) {&lt;br /&gt;        newY=oY; CheckBombStatus(newX,newY);&lt;br /&gt;&lt;br /&gt;        newY=oY-1;&lt;br /&gt;        if ( newY &amp;gt; 0 ) CheckBombStatus(newX,newY);&lt;br /&gt;&lt;br /&gt;        newY=oY+1;&lt;br /&gt;        if ( newY &amp;lt;=Y) CheckBombStatus(newX,newY);&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;    newX = oX&lt;br /&gt;    newY=oY-1;&lt;br /&gt;    if ( newY &amp;gt; 0 ) CheckBombStatus(newX,newY);&lt;br /&gt;&lt;br /&gt;    newY=oY+1;&lt;br /&gt;    if ( newY &amp;lt;=Y) CheckBombStatus(newX,newY);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function CheckBombStatus(oX,oY) {&lt;br /&gt;    if (!IsOpenBomb(oX,oY) &amp;&amp; CheckBomb(oX,oY,'0')) {&lt;br /&gt;        // 如果週圍是零且未開啟，則讓它繼續做下去！這就是遞迴。&lt;br /&gt;        CheckBomb0(oX,oY);&lt;br /&gt;        traceLevel--&lt;br /&gt;    } else if (!IsOpenBomb(oX,oY) ) {&lt;br /&gt;        // 如果週圍是未開啟，又不是 零，那一定是數字，那就把它打開。&lt;br /&gt;        ShowBomb(oX,oY);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function IsOpenBomb(oX,oY) {&lt;br /&gt;    var otd=document.getElementById('x'+oX+'y'+oY);&lt;br /&gt;    // alert('x='+oX+';y='+oY);&lt;br /&gt;    // alert('value='+otd.innerHTML+';tag='+otd.tag);&lt;br /&gt;    if ( otd.innerHTML == '&amp;nbsp;' ) {&lt;br /&gt;        return false;&lt;br /&gt;    } else {&lt;br /&gt;        return true;&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function OpenAll() {&lt;br /&gt;    for( var i=1;i&amp;lt;=Y;i++) {&lt;br /&gt;        for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;            ShowBomb(j,i);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function ShowBomb(oX,oY) {&lt;br /&gt;    var tdObj=document.getElementById('x'+oX+'y'+oY);&lt;br /&gt;    tdObj.innerHTML=tdObj.tag;&lt;br /&gt;    tdObj.style.background ='#'+OpenColor;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function GetXY(){&lt;br /&gt;    var oX,oY,oXY;&lt;br /&gt;    var d=new Date();&lt;br /&gt;    var oms=d.getMilliseconds();&lt;br /&gt;    oX=parseInt(Math.random(d.getMilliseconds())*(X-1)+1);&lt;br /&gt;    oY=parseInt(Math.random(d.getMilliseconds())*(Y-1)+1);&lt;br /&gt;    oXY=oX+'#'+oY;&lt;br /&gt;    return oXY;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function ClearBombs() {&lt;br /&gt;    while(BombsArray.length&amp;gt;0) {&lt;br /&gt;        BombsArray.pop();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    for( var i=1;i&amp;lt;=Y;i++) {&lt;br /&gt;        for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;            var tdObj=document.getElementById('x'+j+'y'+i);&lt;br /&gt;            tdObj.style.background='#'+nonOpenColor;&lt;br /&gt;            tdObj.innerHTML='&amp;nbsp;';&lt;br /&gt;            tdObj.tag='';&lt;br /&gt;            tdObj.style.color='black';&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    ShowBombsTip();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function ShowLevelTip(oObj) {&lt;br /&gt;    if ( !oObj.type) {&lt;br /&gt;        return;&lt;br /&gt;    }&lt;br /&gt;    // alert(oObj.value);&lt;br /&gt;    var oaStr = oObj.value.split('*');&lt;br /&gt;    X = oaStr[1];Y = oaStr[0];MaxBombs = oaStr[2];&lt;br /&gt;    var oStr = oaStr[0]+ ' x '+ oaStr[1]+ ' 格子，共有 '+ oaStr[2]+ ' 炸彈';&lt;br /&gt;    var oTip = document.getElementById("LevelTip");&lt;br /&gt;    oTip.innerHTML=oStr;&lt;br /&gt;    oTip.style.visibility="visible";&lt;br /&gt;    DrawTable();&lt;br /&gt;    NewGame();&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function ShowBombsTip() {&lt;br /&gt;    var oBombsTip = document.getElementById("BombsTip");&lt;br /&gt;    var oBombs=0;&lt;br /&gt;    for( var i=1;i&amp;lt;=Y;i++) {&lt;br /&gt;        for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;            var tdObj=document.getElementById('x'+j+'y'+i);&lt;br /&gt;            if ( tdObj.innerHTML=='O' ) oBombs++;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    var oStr = '已經找到 '+oBombs+' 個炸彈了！';&lt;br /&gt;    oBombsTip.innerHTML=oStr;&lt;br /&gt;    oBombsTip.style.visibility="visible";&lt;br /&gt;    var errBombs=0;&lt;br /&gt;    if ( oBombs == MaxBombs ) {&lt;br /&gt;        for( var i=1;i&amp;lt;=Y;i++){&lt;br /&gt;            for( var j=1;j&amp;lt;=X;j++) {&lt;br /&gt;                var tdObj=document.getElementById('x'+j+'y'+i);&lt;br /&gt;                if ( tdObj.innerHTML=='O' &amp;&amp; tdObj.tag != 'X'){&lt;br /&gt;                    errBombs++;&lt;br /&gt;                    tdObj.style.background='#FFFF66';&lt;br /&gt;                } else {&lt;br /&gt;                    tdObj.innerHTML=tdObj.tag;&lt;br /&gt;                    tdObj.style.background ='#'+OpenColor;            &lt;br /&gt;                }&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;        if ( errBombs &amp;gt; 0) {&lt;br /&gt;            alert("You are failure!!!");  &lt;br /&gt;        }&lt;br /&gt;        &lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function init(){&lt;br /&gt;    oBombsBody = document.getElementById('BombsBody');    &lt;br /&gt;    ShowLevelTip(document.getElementById('RadioLevel1'));&lt;br /&gt;    ShowBombsTip();&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;style&amp;gt;&lt;br /&gt;#LevelTip {&lt;br /&gt;    visibility: hidden;&lt;br /&gt;    background-color: FFFF66;&lt;br /&gt;    padding: 5px;&lt;br /&gt;    width: 250px;&lt;br /&gt;    text-align: center;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;#BombsTip {&lt;br /&gt;    visibility: hidden;&lt;br /&gt;    background-color: CCFFCC;&lt;br /&gt;    padding: 5px;&lt;br /&gt;    width: 250px;&lt;br /&gt;    text-align: center;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;tbody {&lt;br /&gt;    border: 2px solid green;&lt;br /&gt;    background-color: white;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;td {&lt;br /&gt;  width: 20px;&lt;br /&gt;  height: 20px;&lt;br /&gt;  background-color: C0C0C0;&lt;br /&gt;  text-align: center;&lt;br /&gt;  padding: 1px;&lt;br /&gt;  font-weight: bolder;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.bomb {&lt;br /&gt;  color: red;&lt;br /&gt;  font-weight: bolder;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.bombs0 {&lt;br /&gt;  color: 707070;&lt;br /&gt;  font-weight: bolder;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body onLoad="init()" onContextmenu="return false"&amp;gt;&lt;br /&gt;&amp;lt;span id="SpanLevel1"&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;&amp;lt;input type="radio" name="GameType" value="9*9*10" id="RadioLevel1" checked onClick="ShowLevelTip(this)"&amp;gt;&lt;br /&gt;&amp;lt;label for="RadioLevel1" &amp;gt;初級&amp;lt;/label&amp;gt;&lt;br /&gt;&amp;lt;span id="SpanLevel2"&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;&amp;lt;input type="radio" name="GameType" value="16*16*40" id="RadioLevel2" onClick="ShowLevelTip(this)"&amp;gt;&lt;br /&gt;&amp;lt;label for="RadioLevel2" &amp;gt;中級&amp;lt;/label&amp;gt;&lt;br /&gt;&amp;lt;span id="SpanLevel3"&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;&amp;lt;input type="radio" name="GameType" value="16*30*99" id="RadioLevel3" onClick="ShowLevelTip(this)"&amp;gt;&lt;br /&gt;&amp;lt;label for="RadioLevel3" &amp;gt;高級&amp;lt;/label&amp;gt;&lt;br /&gt;&amp;lt;a href="javascript:NewGame();"&amp;gt;New Game&amp;lt;/a&amp;gt; &amp;lt;a href="javascript:OpenAll();"&amp;gt;Give Up&amp;lt;/a&amp;gt; &amp;lt;p/&amp;gt;&lt;br /&gt;&amp;lt;table &amp;gt;&lt;br /&gt;  &amp;lt;caption id="BombsCaption"&amp;gt;大家來玩踩地雷&amp;lt;/caption&amp;gt;&lt;br /&gt;  &amp;lt;tbody id="BombsBody"&amp;gt;&lt;br /&gt;  &amp;lt;/tbody&amp;gt;&lt;br /&gt;&amp;lt;/table&amp;gt;&lt;br /&gt;&amp;lt;div id="LevelTip" &amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;div id="BombsTip" &amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;!--&lt;br /&gt;&amp;lt;form name="test"&amp;gt;&lt;br /&gt;&amp;lt;input type="text" name='str'&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;--&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-716719368432777936?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2007/09/javascript.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-6958625154343457403</guid><pubDate>Thu, 13 Sep 2007 06:14:00 +0000</pubDate><atom:updated>2007-09-13T14:34:26.402+08:00</atom:updated><title>Javascript 十進位轉16進位 16進位轉十進位</title><description>以下的函數很好用哦！！&lt;br /&gt;&lt;br /&gt;十進位轉16進位&lt;br /&gt;function d2h(d) {return d.toString(16);}&lt;br /&gt;&lt;br /&gt;16進位轉十進位&lt;br /&gt;function h2d(h) {return parseInt(h,16);}&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-6958625154343457403?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2007/09/javascript-16-16.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>3</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116718335533504713</guid><pubDate>Wed, 27 Dec 2006 01:35:00 +0000</pubDate><atom:updated>2006-12-27T09:35:55.570+08:00</atom:updated><title>Dreamweaver 技巧</title><description>&lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;摘錄自  &lt;a href="http://www.ithome.com.tw/plog/index.php?blogId=318" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.ithome.com.tw/plog&lt;wbr&gt;/index.php?blogId=318&lt;/a&gt;&lt;br /&gt;感謝！&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Dreamweaver 技巧&lt;br /&gt;&lt;/h2&gt;           &lt;span style="font-size:130%;"&gt;&lt;span style="color:#4d2600;"&gt;1. 用Dreamweaver 4.0輕鬆設計會自動彈性調整的網頁&lt;br /&gt;首 先需要保證的是你的頁面內容採用了表格的格式，然後開啟你要編輯的&lt;wbr&gt;頁面，按「Ctrl+F6」或是選單「View→TableVie&lt;wbr&gt;w→Layout? View」轉換到佈局視圖。這時可以看到單元格的列寬&lt;wbr&gt;，在列寬數字的旁邊還有一個小小的下拉式箭頭，點擊你要設定彈性顯&lt;wbr&gt;示的列上方的小箭頭，接著選取「將 列設為彈性顯示」(Make Column Autostretch)。該列方框上方就會出現一條波浪形的線&lt;wbr&gt;，而不是剛才表示列寬的數字。完成後你的頁面就變成了一個具有彈性&lt;wbr&gt;的頁面了。此外，需要注 意頁面中不要有尺寸過大的圖片。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;2. 用Dreamweaver 4.0製作有閃動效果的Flash按鈕&lt;br /&gt;選 取選單Insert→Interactive?Images&lt;wbr&gt;→Flash?Button就可看到有哪些內嵌按鈕&lt;wbr&gt;。在跳出的對話框裡，你可以在 「Style」清單裡選取自己想要的按鈕型態，在預覽&lt;wbr&gt;(Sample)視窗裡可以看到這種型態的效果如何。選取好之後&lt;wbr&gt;，在「Button?Text」視窗 輸入按鈕上面的文字，在「Font」視窗選取字型，在「Size&lt;wbr&gt;」視窗輸入文字的大小，在「Link」視窗輸入連結的目的，在&lt;wbr&gt;「Target」視窗選取連 結開啟的模式，在「BgColor」選取按鈕背景彩色，在&lt;wbr&gt;「Save?As」視窗輸入儲存的檔案名。完成這些後，按下&lt;wbr&gt;「OK」按鈕，你就完成了一個 Flash按鈕啦。這個按鈕還會自動插入你的網頁中&lt;wbr&gt;，然後在Dreamweaver編輯視窗選中你剛才製作的按鈕&lt;wbr&gt;，屬性視窗就會顯示出這個按鈕的屬性，點 選上面的「Play」按鈕，你就可直接在編輯視窗預覽這個按鈕的閃&lt;wbr&gt;動效果。需要注意的是Dreamweaver?4&lt;wbr&gt;.0的這個功能不支援中文字型。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;3. 在Dreamweaver 4.0中自訂鍵盤快捷鍵&lt;br /&gt;選 取選單「Edit→Keyboard?Shortcuts」&lt;wbr&gt;，在對話框中會列出目前已經啟用的以及可以變更的快捷鍵一覽表&lt;wbr&gt;，你可以在這裡把快捷鍵改成自己 習慣用的。若果要變更快捷鍵，首先要選取你要變更的指令&lt;wbr&gt;，接著選取目前的快捷鍵，這個快捷鍵就會出現在「Shortcut&lt;wbr&gt;s」清單中，然後在「Press Key」視窗輸入你想要使用的快捷鍵，然後點擊「Change&lt;wbr&gt;」按鈕變更即可完畢。你還可以利用「+」、「-」按鈕增加或是刪除&lt;wbr&gt;目前的快捷鍵。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;4. 讓Dreamweaver?4.0和Fireworks整合&lt;br /&gt;若 果你的電腦裡同時安裝了Dreamweaver/Firework&lt;wbr&gt;s，那麼你就可以使用Dreamweaver?4&lt;wbr&gt;.0提供的整合Fireworks的功 能。利用這個功能你可以把你的GIF圖片修改得更加動人&lt;wbr&gt;，輕鬆地實現動畫效果。在Dreamweaver編輯視窗選取好你&lt;wbr&gt;要修改的GIF圖片，然後在圖片 屬性視窗點選「編輯(Edit)」按鈕，這時系統會自動啟動Fir&lt;wbr&gt;eworks軟體編輯這個圖片。仔細看，你會發現Firework&lt;wbr&gt;s的圖片編輯視窗已出 現Editing?From?Dreamweaver這樣的文字和&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;圖樣，也就是說這個圖片是為Dreamweaver頁面進行圖片編&lt;wbr&gt;輯的。現在我們在\nFireworks裡選取要編輯的圖片，選取選單「Modify&lt;wbr&gt;→Animate→Animate?Selection」&lt;wbr&gt;。在跳出的視窗裡設定動畫的屬\n性：選定動畫的畫面數、動畫移動的方向、透明度等等&lt;wbr&gt;。然後把修改好的檔案匯出即可。這樣，在Dreamweaver編&lt;wbr&gt;輯視窗會自動更新剛才修改好的檔案，\n使你的頁面圖片動起來。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;5. 巧用網站報告器&lt;br /&gt;在Dreamweaver?\n4.0里提供了一個網站報告器，利用這個網站報告器可以幫助你在你的網站眾多檔案中快速找到和修復&lt;wbr&gt;錯誤。點選選單「Site→Reports」即可啟動報\n告器，選取你要檢查的項目，然後點選「Run」按鈕即可查出你網站&lt;wbr&gt;上的一般問題。你也可以自己編寫報告器來查出網站上的一些特殊問題\n(一般問題通常是一些文字丟失或文件未命名) 。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;6. 快速還原多次動作&lt;br /&gt;在\n製作頁面時，我們可能需要不停地修改頁面，有時還要還原過去的動作&lt;wbr&gt;，我們可以使用「Edit」選單裡的「Undo」指令&lt;wbr&gt;，可是這個指令每次只能還原一次，\n若果我們需要還原多次動作，那就要不停地「Undo」，實在太煩&lt;wbr&gt;。在Dreamweaver?4.0里提供了一個History視&lt;wbr&gt;窗，可以讓我們輕鬆地還\n原多次動作。在「Windows」選單裡選取「History&lt;wbr&gt;」即可開啟這個歷史視窗。在這個視窗把你每一次的動作都保留下來了&lt;wbr&gt;，利用視窗左邊那個滑動指\n標，就可以不停地還原，還可以還原每一次動作，內含已經存盤的&lt;wbr&gt;。而且還可以把這個歷史紀錄儲存下來共享。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;7. 隱藏浮動面板&lt;br /&gt;開啟Dreamweaver，給人的第一印象是一堆浮動面板&lt;wbr&gt;，往往弄得你眼花繚亂，雖然它可以拖開，但畢竟佔據著本來就很有限&lt;wbr&gt;的螢幕，若把它關閉了，等一下用它時又要去開啟。其實你只要按一下&lt;wbr&gt;F4鍵，所有浮動面板都不見，再按F4他們又都重現於螢幕上了。 \n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;8. 快速預覽網頁&lt;br /&gt;初\n學Dreamweaver，往往找不到預覽選單，不得不另外啟動I&lt;wbr&gt;E瀏覽器來預覽網頁的實際效果。其實Dreamweaver的預覽&lt;wbr&gt;選單放到File選單\n下了，要預覽正在編輯的網頁，按F12鍵就可以了，方便得很呢&lt;wbr&gt;！而且還可設定在不同的瀏覽器中預覽，在File選單下的Prev&lt;wbr&gt;iew in\nBrowser中選取Edit Browser List就可選取不同的瀏覽器進行預覽。以測試你的網頁對不同瀏覽&lt;wbr&gt;器的適應性。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;9. 在HTML檢示窗中顯示行號和自動換行&lt;br /&gt;雖\n然Dreamweaver的Behaviors是一個java&lt;wbr&gt;&lt;i&gt;script&lt;/i&gt;小程式的巨集，許多實現特殊網頁效果的\njava&lt;i&gt;script&lt;/i&gt;程式都不用動手寫程式&lt;wbr&gt;，但有時需要編寫一點小程式時，顯示程式行號顯得尤為必要&lt;wbr&gt;，特別是在程\n式發生錯誤時，往往都有是提示在「XX行有錯誤」&lt;wbr&gt;，若一行一行地去數行號不僅太累而且還容易數錯，在FrontPa",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;圖樣，也就是說這個圖片是為Dreamweaver頁面進行圖片編&lt;wbr&gt;輯的。現在我們在 Fireworks裡選取要編輯的圖片，選取選單「Modify&lt;wbr&gt;→Animate→Animate?Selection」&lt;wbr&gt;。在跳出的視窗裡設定動畫的屬 性：選定動畫的畫面數、動畫移動的方向、透明度等等&lt;wbr&gt;。然後把修改好的檔案匯出即可。這樣，在Dreamweaver編&lt;wbr&gt;輯視窗會自動更新剛才修改好的檔案， 使你的頁面圖片動起來。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;5. 巧用網站報告器&lt;br /&gt;在Dreamweaver? 4.0里提供了一個網站報告器，利用這個網站報告器可以幫助你在你的網站眾多檔案中快速找到和修復&lt;wbr&gt;錯誤。點選選單「Site→Reports」即可啟動報 告器，選取你要檢查的項目，然後點選「Run」按鈕即可查出你網站&lt;wbr&gt;上的一般問題。你也可以自己編寫報告器來查出網站上的一些特殊問題 (一般問題通常是一些文字丟失或文件未命名) 。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;6. 快速還原多次動作&lt;br /&gt;在 製作頁面時，我們可能需要不停地修改頁面，有時還要還原過去的動作&lt;wbr&gt;，我們可以使用「Edit」選單裡的「Undo」指令&lt;wbr&gt;，可是這個指令每次只能還原一次， 若果我們需要還原多次動作，那就要不停地「Undo」，實在太煩&lt;wbr&gt;。在Dreamweaver?4.0里提供了一個History視&lt;wbr&gt;窗，可以讓我們輕鬆地還 原多次動作。在「Windows」選單裡選取「History&lt;wbr&gt;」即可開啟這個歷史視窗。在這個視窗把你每一次的動作都保留下來了&lt;wbr&gt;，利用視窗左邊那個滑動指 標，就可以不停地還原，還可以還原每一次動作，內含已經存盤的&lt;wbr&gt;。而且還可以把這個歷史紀錄儲存下來共享。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;7. 隱藏浮動面板&lt;br /&gt;開啟Dreamweaver，給人的第一印象是一堆浮動面板&lt;wbr&gt;，往往弄得你眼花繚亂，雖然它可以拖開，但畢竟佔據著本來就很有限&lt;wbr&gt;的螢幕，若把它關閉了，等一下用它時又要去開啟。其實你只要按一下&lt;wbr&gt;F4鍵，所有浮動面板都不見，再按F4他們又都重現於螢幕上了。 &lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;8. 快速預覽網頁&lt;br /&gt;初 學Dreamweaver，往往找不到預覽選單，不得不另外啟動I&lt;wbr&gt;E瀏覽器來預覽網頁的實際效果。其實Dreamweaver的預覽&lt;wbr&gt;選單放到File選單 下了，要預覽正在編輯的網頁，按F12鍵就可以了，方便得很呢&lt;wbr&gt;！而且還可設定在不同的瀏覽器中預覽，在File選單下的Prev&lt;wbr&gt;iew in Browser中選取Edit Browser List就可選取不同的瀏覽器進行預覽。以測試你的網頁對不同瀏覽&lt;wbr&gt;器的適應性。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;9. 在HTML檢示窗中顯示行號和自動換行&lt;br /&gt;雖 然Dreamweaver的Behaviors是一個java&lt;wbr&gt;&lt;i&gt;script&lt;/i&gt;小程式的巨集，許多實現特殊網頁效果的 java&lt;i&gt;script&lt;/i&gt;程式都不用動手寫程式&lt;wbr&gt;，但有時需要編寫一點小程式時，顯示程式行號顯得尤為必要&lt;wbr&gt;，特別是在程 式發生錯誤時，往往都有是提示在「XX行有錯誤」&lt;wbr&gt;，若一行一行地去數行號不僅太累而且還容易數錯，在FrontPa&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;ge中老是為數錯行號而煩惱。在\nDreamweaver中可方便了，只要在HTML源代碼檢視器視&lt;wbr&gt;窗中，選中「Line\nNumbers」（行號）復選框，則會在源代碼檢視器視窗中對每條&lt;wbr&gt;HTML語句自動顯示行號，一目瞭然。同樣有時一行代碼較長&lt;wbr&gt;，只要在HTML源代碼檢視\n器視窗中，選中「Warp」（自動換行）復選框，則會啟用視窗的自&lt;wbr&gt;動換行特性，過長的代碼會自動從視窗的邊緣繞回。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;10. 如何獲得彩色的十六進位代碼&lt;br /&gt;在設計網頁時，有時要用到16進位的彩色代碼，以前經常為這事頭痛&lt;wbr&gt;，在Dreamweaver中只要按屬性面板上「bg&lt;wbr&gt;」邊上小方框右下角的小三角形，在跳出的彩色板上，滑鼠指到哪兒&lt;wbr&gt;，馬上就能顯示出相應彩色的16進位代碼，真方便。\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;11. 製作背景音樂&lt;br /&gt;在Dreamweaver中插入背景音樂是非常容易實現的&lt;wbr&gt;，這裡介紹兩種方法，由大家選取。&lt;br /&gt;（1）在頁面不顯眼的地方插入一空層 ，並在層內放入一個ActivX物件 ，按兩下該對象，在開啟的對話框中選取一個MIDI音樂檔案&lt;wbr&gt;，然後在層物件屬性面板中設定其可視性為「Hidden」&lt;wbr&gt;，儲存變動後按F12預覽網頁，聽聽是否有音樂聲。 \n&lt;br /&gt;（2）另一種方法是利用Dreamweaver的&lt;wbr&gt;「Behaviors」行為編輯器 ，點選「＋」按鈕，選取其中「Play Sound」選項，在跳出的對話框中選取一個音樂檔案即可&lt;wbr&gt;。自己動手試一試吧！&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;12. 讓背景圖不捲動&lt;br /&gt;與FrontPage\n不同，Dreamweaver中插入的背景圖是會隨文字捲動的&lt;wbr&gt;。有的時候我們需要製作固定的背景圖，怎麼辦呢？先定義一張背景圖&lt;wbr&gt;，按「F10」開啟\nHTML源檔案，找到定義背景圖片的語句，例如backgroun&lt;wbr&gt;d\u003d〞images/background.JPG〞&lt;wbr&gt;，在它的後面空一格加上一句\nbgproperties\u003d〞fixed〞。預覽一下&lt;wbr&gt;，是不是有點小小的成就感。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;13. 定義大小不變的文字&lt;br /&gt;為\n什麼別人網頁上的文字那麼漂亮，不管你怎麼按瀏覽器字型按鈕上的大&lt;wbr&gt;小，他們的字型尺寸都不會發生變化。其實他們使用了網頁中的&lt;wbr&gt;「CSS」型態表技術，在\nDreamweaver中要實現這一功能是非常簡單的。首先按&lt;wbr&gt;「F7」或是選取「視窗」選單中的「型態表」選項開啟型態表編輯器&lt;wbr&gt;，在視窗中點選滑鼠右鍵選\n取「新增」，在跳出的對話框中輸入需要定義的型態表名稱，按&lt;wbr&gt;「確定」，然後在清單中選取第一項「類型」，並給具體的文字屬性定&lt;wbr&gt;義參數（一般來說文字的大小\n在800×600的螢幕中選取10.5較為適宜），按「確定」後，定義好的型態表就出現了。選取網頁編輯窗中的文字&lt;wbr&gt;，點選新的型態表名，可以看到選中的文\n字發生的變化。預覽一下，試試定義的文字字型尺寸還會不會隨瀏覽器&lt;wbr&gt;的選取字型大小而改變。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;14. 插入Flash動畫&lt;br /&gt;Macromedia\n公司的Flash動畫因其具有交互性、傳輸速度快等特點&lt;wbr&gt;，已逐漸成為網頁製作的一項新武器，若果你的網頁上能插入一段Fl",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;ge中老是為數錯行號而煩惱。在 Dreamweaver中可方便了，只要在HTML源代碼檢視器視&lt;wbr&gt;窗中，選中「Line Numbers」（行號）復選框，則會在源代碼檢視器視窗中對每條&lt;wbr&gt;HTML語句自動顯示行號，一目瞭然。同樣有時一行代碼較長&lt;wbr&gt;，只要在HTML源代碼檢視 器視窗中，選中「Warp」（自動換行）復選框，則會啟用視窗的自&lt;wbr&gt;動換行特性，過長的代碼會自動從視窗的邊緣繞回。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;10. 如何獲得彩色的十六進位代碼&lt;br /&gt;在設計網頁時，有時要用到16進位的彩色代碼，以前經常為這事頭痛&lt;wbr&gt;，在Dreamweaver中只要按屬性面板上「bg&lt;wbr&gt;」邊上小方框右下角的小三角形，在跳出的彩色板上，滑鼠指到哪兒&lt;wbr&gt;，馬上就能顯示出相應彩色的16進位代碼，真方便。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;11. 製作背景音樂&lt;br /&gt;在Dreamweaver中插入背景音樂是非常容易實現的&lt;wbr&gt;，這裡介紹兩種方法，由大家選取。&lt;br /&gt;（1）在頁面不顯眼的地方插入一空層 ，並在層內放入一個ActivX物件 ，按兩下該對象，在開啟的對話框中選取一個MIDI音樂檔案&lt;wbr&gt;，然後在層物件屬性面板中設定其可視性為「Hidden」&lt;wbr&gt;，儲存變動後按F12預覽網頁，聽聽是否有音樂聲。 &lt;br /&gt;（2）另一種方法是利用Dreamweaver的&lt;wbr&gt;「Behaviors」行為編輯器 ，點選「＋」按鈕，選取其中「Play Sound」選項，在跳出的對話框中選取一個音樂檔案即可&lt;wbr&gt;。自己動手試一試吧！&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;12. 讓背景圖不捲動&lt;br /&gt;與FrontPage 不同，Dreamweaver中插入的背景圖是會隨文字捲動的&lt;wbr&gt;。有的時候我們需要製作固定的背景圖，怎麼辦呢？先定義一張背景圖&lt;wbr&gt;，按「F10」開啟 HTML源檔案，找到定義背景圖片的語句，例如backgroun&lt;wbr&gt;d=〞images/background.JPG〞&lt;wbr&gt;，在它的後面空一格加上一句 bgproperties=〞fixed〞。預覽一下&lt;wbr&gt;，是不是有點小小的成就感。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;13. 定義大小不變的文字&lt;br /&gt;為 什麼別人網頁上的文字那麼漂亮，不管你怎麼按瀏覽器字型按鈕上的大&lt;wbr&gt;小，他們的字型尺寸都不會發生變化。其實他們使用了網頁中的&lt;wbr&gt;「CSS」型態表技術，在 Dreamweaver中要實現這一功能是非常簡單的。首先按&lt;wbr&gt;「F7」或是選取「視窗」選單中的「型態表」選項開啟型態表編輯器&lt;wbr&gt;，在視窗中點選滑鼠右鍵選 取「新增」，在跳出的對話框中輸入需要定義的型態表名稱，按&lt;wbr&gt;「確定」，然後在清單中選取第一項「類型」，並給具體的文字屬性定&lt;wbr&gt;義參數（一般來說文字的大小 在800×600的螢幕中選取10.5較為適宜），按「確定」後，定義好的型態表就出現了。選取網頁編輯窗中的文字&lt;wbr&gt;，點選新的型態表名，可以看到選中的文 字發生的變化。預覽一下，試試定義的文字字型尺寸還會不會隨瀏覽器&lt;wbr&gt;的選取字型大小而改變。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;14. 插入Flash動畫&lt;br /&gt;Macromedia 公司的Flash動畫因其具有交互性、傳輸速度快等特點&lt;wbr&gt;，已逐漸成為網頁製作的一項新武器，若果你的網頁上能插入一段Fl&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;ash動畫，那麼一定會使你的作\n品增色不少。在Dreamweaver中插入Flash製作的SW&lt;wbr&gt;F格式動畫十分容易，點選物件工具列上的Flash徽標或點選的&lt;wbr&gt;「媒體」下的\n「Flash」，就可以開啟選取SWF動畫檔案的對話框了&lt;wbr&gt;，選好檔案後可在其屬性面板中設定播放的參數，即大功告成。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;15. 讓表格給網頁留白&lt;br /&gt;在Dreamweaver\n的新網頁上輸入文字時，預設格式是頂天立地的，十分不美觀&lt;wbr&gt;。要避免這一缺憾其實很簡單，只要大家用好表格工具就行了&lt;wbr&gt;。具體做法是：在新頁面上插入一張齊中\n對齊的表格，為了能夠使表格方便控制，最好設定奇數列&lt;wbr&gt;，並且數值不要太大。這樣在單元格內輸入的文字就被限制在一個可以&lt;wbr&gt;隨意調整寬度的區域內，就不愁文字\n不聽使喚了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;16. 改變狀態列提示文字&lt;br /&gt;一\n般情況下，當瀏覽器裝入一個頁面時，在其狀態列上顯示的是該頁面的&lt;wbr&gt;位址名稱，十分呆板。你有沒有想過給瀏覽器的狀態列增加一點個性呢&lt;wbr&gt;？若果有的話，那麼請\n按照以下的步驟，定制自己喜歡的文字吧！首先開啟&lt;wbr&gt;「Behaviors」行為編輯窗，點選「＋」按鈕，選取「Set Text Set」下的「Text\nOf Status Bar」選項，然後在方框中輸入自己的文字，例如&lt;wbr&gt;「歡迎來到我的主頁」等，點選「確定」即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;17. 整合的文字代碼編輯器&lt;br /&gt;可\n視化網頁編輯軟體的最大不便之處就是很難對源代碼進行編輯&lt;wbr&gt;，更別說java&lt;i&gt;script&lt;/i&gt;了；不過\nDreamweaver?將使你處理代碼變得異常輕鬆&lt;wbr&gt;。這個內建的文字代碼編輯器主要的新功能是：自動縮排&lt;wbr&gt;（可以一次選取多行進行縮排），?還可以進行符\n號的檢驗，若果在編寫代碼忘了一個「」，它將給出提示&lt;wbr&gt;。在工具表中的下拉選單會列出目前網頁中所有自訂java&lt;i&lt;wbr&gt;&gt;script&lt;\n/I&gt;函數，可讓你在網頁原代碼中自由跳轉，「原始碼導航工具&lt;wbr&gt;」可以讓專業人士方便地處理java&lt;i&gt;script&lt;\n/I&gt;函數，在文字代碼編輯器中輸入java&lt;i&gt;script&lt;wbr&gt;&lt;/i&gt;代碼，系統將用不同的彩色來顯示。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;18. 在Dreamweaver中輸入多個空格&lt;br /&gt;\n我們平時輸入的空格是半角字元，在Dreamweaver中只能輸&lt;wbr&gt;入一個，要想輸入多個空格只要輸入全角空格就可以了&lt;wbr&gt;。輸入全角空格的方法是：開啟中文輸入法，按Shift&lt;wbr&gt;+Space切換到全角狀態。這時你輸入的空格就是全角空格了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;19. 解決Dreamweaver的BUG之一&lt;br /&gt;在Dreamweaver\n3.0中行為面板（Behavior inspector）中，「Events\nfor」下拉選單項無法開啟。這樣一來，很多特技效果形同虛設&lt;wbr&gt;，根本沒法製作。其實這應該算Dreamweaver\n3.0和中文Windows98不相容的一個地方吧，在英文Windows98中就沒有這個問題。而實際上這個選單還是&lt;wbr&gt;可以開啟的，只不過是不能正確顯示\n罷了。在選中下拉選單後，我們可以用上下鍵來選取我們想要用的瀏覽",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;ash動畫，那麼一定會使你的作 品增色不少。在Dreamweaver中插入Flash製作的SW&lt;wbr&gt;F格式動畫十分容易，點選物件工具列上的Flash徽標或點選的&lt;wbr&gt;「媒體」下的 「Flash」，就可以開啟選取SWF動畫檔案的對話框了&lt;wbr&gt;，選好檔案後可在其屬性面板中設定播放的參數，即大功告成。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;15. 讓表格給網頁留白&lt;br /&gt;在Dreamweaver 的新網頁上輸入文字時，預設格式是頂天立地的，十分不美觀&lt;wbr&gt;。要避免這一缺憾其實很簡單，只要大家用好表格工具就行了&lt;wbr&gt;。具體做法是：在新頁面上插入一張齊中 對齊的表格，為了能夠使表格方便控制，最好設定奇數列&lt;wbr&gt;，並且數值不要太大。這樣在單元格內輸入的文字就被限制在一個可以&lt;wbr&gt;隨意調整寬度的區域內，就不愁文字 不聽使喚了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;16. 改變狀態列提示文字&lt;br /&gt;一 般情況下，當瀏覽器裝入一個頁面時，在其狀態列上顯示的是該頁面的&lt;wbr&gt;位址名稱，十分呆板。你有沒有想過給瀏覽器的狀態列增加一點個性呢&lt;wbr&gt;？若果有的話，那麼請 按照以下的步驟，定制自己喜歡的文字吧！首先開啟&lt;wbr&gt;「Behaviors」行為編輯窗，點選「＋」按鈕，選取「Set Text Set」下的「Text Of Status Bar」選項，然後在方框中輸入自己的文字，例如&lt;wbr&gt;「歡迎來到我的主頁」等，點選「確定」即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;17. 整合的文字代碼編輯器&lt;br /&gt;可 視化網頁編輯軟體的最大不便之處就是很難對源代碼進行編輯&lt;wbr&gt;，更別說java&lt;i&gt;script&lt;/i&gt;了；不過 Dreamweaver?將使你處理代碼變得異常輕鬆&lt;wbr&gt;。這個內建的文字代碼編輯器主要的新功能是：自動縮排&lt;wbr&gt;（可以一次選取多行進行縮排），?還可以進行符 號的檢驗，若果在編寫代碼忘了一個「」，它將給出提示&lt;wbr&gt;。在工具表中的下拉選單會列出目前網頁中所有自訂java&lt;i&lt;wbr&gt;&gt;script&lt; /I&gt;函數，可讓你在網頁原代碼中自由跳轉，「原始碼導航工具&lt;wbr&gt;」可以讓專業人士方便地處理java&lt;i&gt;script&lt; /I&gt;函數，在文字代碼編輯器中輸入java&lt;i&gt;script&lt;wbr&gt;&lt;/i&gt;代碼，系統將用不同的彩色來顯示。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;18. 在Dreamweaver中輸入多個空格&lt;br /&gt;我們平時輸入的空格是半角字元，在Dreamweaver中只能輸&lt;wbr&gt;入一個，要想輸入多個空格只要輸入全角空格就可以了&lt;wbr&gt;。輸入全角空格的方法是：開啟中文輸入法，按Shift&lt;wbr&gt;+Space切換到全角狀態。這時你輸入的空格就是全角空格了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;19. 解決Dreamweaver的BUG之一&lt;br /&gt;在Dreamweaver 3.0中行為面板（Behavior inspector）中，「Events for」下拉選單項無法開啟。這樣一來，很多特技效果形同虛設&lt;wbr&gt;，根本沒法製作。其實這應該算Dreamweaver 3.0和中文Windows98不相容的一個地方吧，在英文Windows98中就沒有這個問題。而實際上這個選單還是&lt;wbr&gt;可以開啟的，只不過是不能正確顯示 罷了。在選中下拉選單後，我們可以用上下鍵來選取我們想要用的瀏覽&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;器。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font&gt;20. 用Dreamweaver 3.0的模版製作網頁，設定行為（Behavior）&lt;br /&gt;在\n使用範本（Template）做出來的網頁中不能新增行為&lt;wbr&gt;。這是因為新增行為需要在HTML檔案的Head部分之中插入ja&lt;wbr&gt;va&lt;i&gt;\nscript&lt;/i&gt;，而使用了Template後&lt;wbr&gt;，HTML檔案的Head部分會被「封鎖」住。若果要在使用範本生&lt;wbr&gt;成的網頁中套用行為，你\n就需要事先在範本中定義好行為，然後把它定義為範本的可編輯區域&lt;wbr&gt;。隨後，你就可以在網頁中變更這個行為了。但這也只限於變更行為的&lt;wbr&gt;觸發事件\n（events）和動作（actions）的具體內容&lt;wbr&gt;，而不能變更動作的類型。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;21. 給文字施加行為（Behavior），製作動態文字特效&lt;br /&gt;在Dreamweaver\n中普通的文字是以字元為單位的，不能作為對象，即一些非常有用的j&lt;wbr&gt;ava&lt;i&gt;script&lt;/i&gt;事件不能賦予文字。因為文字\n不像圖片和其他控件有具體的「標示」，所以文字與很多特效失之交臂&lt;wbr&gt;。為了給文字加入特效，只有把文字做成超連結來處理&lt;wbr&gt;。這樣文字就成為了對象，可以施加行\n為了。但是這樣又帶來了一些不需要的超連結屬性，比如下劃線&lt;wbr&gt;，以及hover、visited等彩色變化。\n要想單純為文字加入特效，可以先把所想設定的文字做成超連結&lt;wbr&gt;，然後再在它的上面加入行為，最後我們再把超連結轉變為普通文字&lt;wbr&gt;。具體的步驟如下：&lt;br /&gt;選\n中你想編輯的文字，在連結目的框裡隨便填入幾個字元&lt;wbr&gt;。選中這個連結，點選視窗（Windows）→行為&lt;wbr&gt;（Behaviors），跳出行為面板。按下「+」\n加入你想要的行為，如play\nsound等。開啟Dreamweaver的超文字編輯器&lt;wbr&gt;，找到這個連結，把&lt;a&gt;改為&lt;font&gt;，把&lt;/a&gt;改\n為&lt;/span&gt;。最後把「href\u003d...」刪掉。儲存此頁&lt;wbr&gt;。按F12預覽一下。效果還不錯吧！&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;22. 精確定位網頁中各個元素的位置&lt;br /&gt;精\n確定位網頁中各個元素的位置有兩種方法：使用表格或層&lt;wbr&gt;。使用表格是目前比較通用的做法，具體方法是：先在網頁中建立一個&lt;wbr&gt;表格，注意表格的邊框寬度應為０。\n然後再把各個元素按照你的要求放在各個表格單元之中&lt;wbr&gt;。仔細調整表格單元的大小以及表格邊框的位置，這時在表格單元中的&lt;wbr&gt;元素也會隨之移動位置。這樣你就可以\n比較精確地定位網頁中各個元素的位置了。使用表格的優點是通用&lt;wbr&gt;，幾乎各個版本的瀏覽器可以致支援表格。它的缺點是使用起來比較麻&lt;wbr&gt;煩，需要仔細進行調整，而\n且定位不十分精確。層在網頁中可以隨意放置，因此我們可以使用層來&lt;wbr&gt;進行精確定位。使用方法是，在網頁中插入一個層，然後把你想要定位&lt;wbr&gt;的元素放在層裡，接著\n我們就可以把層放到所想要任何位置了。此外，你還可以借助標尺和網&lt;wbr&gt;格進行精確的定位。因為層只在最新的瀏覽器中被支援&lt;wbr&gt;，所以為了相容舊的瀏覽器，我們可以\n把層轉變為表格。方法是選取「修改(Modify)&lt;wbr&gt;→版面佈局模式(Layout Mode) →把層轉化成表格(convert layers to\ntable)」即可。注意這時的層不能有重疊，我們可以在插入層之&lt;wbr&gt;前選取「檢視(view) →防止層交錯(prevent layer\noverlaps)」來避免層的重疊。一般來說轉換後的頁面可能會&lt;wbr&gt;有一些變化，還需要我們手動進行調整。最後有一點要注意&lt;wbr&gt;，在進行表格和層的相互轉換時，\n最好不要在一個頁面中同時使用層與表格，那樣可能會把你的頁面弄得&lt;wbr&gt;一團糟&lt;br /&gt;23. 改變瀏覽者的滑鼠形狀&lt;br /&gt;這是通過編輯型態表來實現的。具體\n方法是：選取「文字（text）→定制型態（CSS Style）→編輯型態表（Edit Style\nSheet）」，跳出編輯型態表視窗，在其中選取「新增（new",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;器。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;20. 用Dreamweaver 3.0的模版製作網頁，設定行為（Behavior）&lt;br /&gt;在 使用範本（Template）做出來的網頁中不能新增行為&lt;wbr&gt;。這是因為新增行為需要在HTML檔案的Head部分之中插入ja&lt;wbr&gt;va&lt;i&gt; script&lt;/i&gt;，而使用了Template後&lt;wbr&gt;，HTML檔案的Head部分會被「封鎖」住。若果要在使用範本生&lt;wbr&gt;成的網頁中套用行為，你 就需要事先在範本中定義好行為，然後把它定義為範本的可編輯區域&lt;wbr&gt;。隨後，你就可以在網頁中變更這個行為了。但這也只限於變更行為的&lt;wbr&gt;觸發事件 （events）和動作（actions）的具體內容&lt;wbr&gt;，而不能變更動作的類型。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;21. 給文字施加行為（Behavior），製作動態文字特效&lt;br /&gt;在Dreamweaver 中普通的文字是以字元為單位的，不能作為對象，即一些非常有用的j&lt;wbr&gt;ava&lt;i&gt;script&lt;/i&gt;事件不能賦予文字。因為文字 不像圖片和其他控件有具體的「標示」，所以文字與很多特效失之交臂&lt;wbr&gt;。為了給文字加入特效，只有把文字做成超連結來處理&lt;wbr&gt;。這樣文字就成為了對象，可以施加行 為了。但是這樣又帶來了一些不需要的超連結屬性，比如下劃線&lt;wbr&gt;，以及hover、visited等彩色變化。 要想單純為文字加入特效，可以先把所想設定的文字做成超連結&lt;wbr&gt;，然後再在它的上面加入行為，最後我們再把超連結轉變為普通文字&lt;wbr&gt;。具體的步驟如下：&lt;br /&gt;選 中你想編輯的文字，在連結目的框裡隨便填入幾個字元&lt;wbr&gt;。選中這個連結，點選視窗（Windows）→行為&lt;wbr&gt;（Behaviors），跳出行為面板。按下「+」 加入你想要的行為，如play sound等。開啟Dreamweaver的超文字編輯器&lt;wbr&gt;，找到這個連結，把&lt;a&gt;改為&lt;font&gt;，把&lt;/a&gt;改 為&lt;/span&gt;。最後把「href=...」刪掉。儲存此頁&lt;wbr&gt;。按F12預覽一下。效果還不錯吧！&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;22. 精確定位網頁中各個元素的位置&lt;br /&gt;精 確定位網頁中各個元素的位置有兩種方法：使用表格或層&lt;wbr&gt;。使用表格是目前比較通用的做法，具體方法是：先在網頁中建立一個&lt;wbr&gt;表格，注意表格的邊框寬度應為０。 然後再把各個元素按照你的要求放在各個表格單元之中&lt;wbr&gt;。仔細調整表格單元的大小以及表格邊框的位置，這時在表格單元中的&lt;wbr&gt;元素也會隨之移動位置。這樣你就可以 比較精確地定位網頁中各個元素的位置了。使用表格的優點是通用&lt;wbr&gt;，幾乎各個版本的瀏覽器可以致支援表格。它的缺點是使用起來比較麻&lt;wbr&gt;煩，需要仔細進行調整，而 且定位不十分精確。層在網頁中可以隨意放置，因此我們可以使用層來&lt;wbr&gt;進行精確定位。使用方法是，在網頁中插入一個層，然後把你想要定位&lt;wbr&gt;的元素放在層裡，接著 我們就可以把層放到所想要任何位置了。此外，你還可以借助標尺和網&lt;wbr&gt;格進行精確的定位。因為層只在最新的瀏覽器中被支援&lt;wbr&gt;，所以為了相容舊的瀏覽器，我們可以 把層轉變為表格。方法是選取「修改(Modify)&lt;wbr&gt;→版面佈局模式(Layout Mode) →把層轉化成表格(convert layers to table)」即可。注意這時的層不能有重疊，我們可以在插入層之&lt;wbr&gt;前選取「檢視(view) →防止層交錯(prevent layer overlaps)」來避免層的重疊。一般來說轉換後的頁面可能會&lt;wbr&gt;有一些變化，還需要我們手動進行調整。最後有一點要注意&lt;wbr&gt;，在進行表格和層的相互轉換時， 最好不要在一個頁面中同時使用層與表格，那樣可能會把你的頁面弄得&lt;wbr&gt;一團糟&lt;br /&gt;23. 改變瀏覽者的滑鼠形狀&lt;br /&gt;這是通過編輯型態表來實現的。具體 方法是：選取「文字（text）→定制型態（CSS Style）→編輯型態表（Edit Style Sheet）」，跳出編輯型態表視窗，在其中選取「新增（new&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;）」。接著選取「建立一個定制的型態（Make custom\nstyle）」，給這個型態表起名，點選確定。編輯該型態表&lt;wbr&gt;，選取延伸項(extension)，在右邊的游標項&lt;wbr&gt;（Cursor）中選取要出現的指標效果\n即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;24. 去掉超連結文字之下的下劃線&lt;br /&gt;這\n一效果是通過編輯型態表來實現的。具體方法是：「點擊文字&lt;wbr&gt;（text）→定制型態（CSS Style）→編輯型態表（Edit Style\nSheet）」，出現編輯型態表視窗，選取「新增（new）」&lt;wbr&gt;。接著選取重定義HTML標示（Redefine HTML\nTag），並在下面的標示(Tag)選單中選取a。編輯該型態表&lt;wbr&gt;，選取類型(type)，在右邊的裝飾（decoration&lt;wbr&gt;）中選中無（none\n）即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;25. 製作一個跟著頁面走的圖像&lt;br /&gt;這一效果是通過java&lt;i&gt;script&lt;/i&gt;實現的&lt;wbr&gt;。一般來說完成這樣一個效果需要一定的寫程式能力&lt;wbr&gt;，但現在我們可以通過Dreamweaver的外掛輕易地實現&lt;wbr&gt;。你可以到\n&lt;/span&gt;&lt;a&gt;&lt;font&gt;http://www.computerinfo.com.cn&lt;wbr&gt;/classroom/chajian/chajian2.zip&lt;/span&gt;&lt;/a&gt;&lt;font&gt;下\n載這個外掛。外掛的安裝方法：解壓縮後複制到Dreamweave&lt;wbr&gt;r下的資料夾ConfigurationObjects內的一個新&lt;wbr&gt;增資料夾裡面即可。重\n新啟動Dreamweaver之後，我們就可以在物件面板之中找到&lt;wbr&gt;新安裝的外掛了。點擊外掛的圖示，在跳出的對話框中填入圖像的存放&lt;wbr&gt;位址以及圖像的顯示位\n置就可以了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;26. 製作滑鼠移上去後有變化的動態選單&lt;br /&gt;所\n謂動態選單其實是兩幅圖，一幅是滑鼠不放在上面所顯示的&lt;wbr&gt;，另一副是滑鼠移上去所顯示的。我們可以利用Dreamweave&lt;wbr&gt;r提供的行為之中的swap\nimage來實現這個效果。首先插入一副圖片，用滑鼠點選它&lt;wbr&gt;，在屬性面版的連線欄內輸入要連線的網頁。然後開啟行為面板添&lt;wbr&gt;，點擊「+」號，選取swap\nimage。接著出現一個視窗，要你選取滑鼠移上去後所顯示的圖片&lt;wbr&gt;，在此選取第二副圖片，點擊「確定」。好了，效果完成了，多簡單。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;27. 用Dreamweaver製作出一個類似於下拉選單的效果\n&lt;br /&gt;製\n作一個類似於下拉選單的效果需要用到層的隱藏和顯示特性&lt;wbr&gt;。具體的方法是：在頁面中插入一個單行多列的表格&lt;wbr&gt;，作為你的選單條。表格的列數由選單選項的多少決\n定。插入一個層，在層中輸入第一個下拉選單的內容&lt;wbr&gt;，並把這個層移動到表格第一列的下面。同理，對其他選單項也作如上&lt;wbr&gt;的動作，插入相應的層。把所有層的顯示\n屬性(vis)改為隱藏（Hidden）。&lt;br /&gt;選取表格的第一個單元，點選視窗（Windows）→行為&lt;wbr&gt;（Behaviors），跳出行為面板。\n按下「+」加入行為Show-Hide\nlayers，並將第一個層（Layer1）屬性改為顯示",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;）」。接著選取「建立一個定制的型態（Make custom style）」，給這個型態表起名，點選確定。編輯該型態表&lt;wbr&gt;，選取延伸項(extension)，在右邊的游標項&lt;wbr&gt;（Cursor）中選取要出現的指標效果 即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;24. 去掉超連結文字之下的下劃線&lt;br /&gt;這 一效果是通過編輯型態表來實現的。具體方法是：「點擊文字&lt;wbr&gt;（text）→定制型態（CSS Style）→編輯型態表（Edit Style Sheet）」，出現編輯型態表視窗，選取「新增（new）」&lt;wbr&gt;。接著選取重定義HTML標示（Redefine HTML Tag），並在下面的標示(Tag)選單中選取a。編輯該型態表&lt;wbr&gt;，選取類型(type)，在右邊的裝飾（decoration&lt;wbr&gt;）中選中無（none ）即可。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;25. 製作一個跟著頁面走的圖像&lt;br /&gt;這一效果是通過java&lt;i&gt;script&lt;/i&gt;實現的&lt;wbr&gt;。一般來說完成這樣一個效果需要一定的寫程式能力&lt;wbr&gt;，但現在我們可以通過Dreamweaver的外掛輕易地實現&lt;wbr&gt;。你可以到 &lt;/span&gt;&lt;a href="http://www.computerinfo.com.cn/classroom/chajian/chajian2.zip" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;&lt;span style="font-size:130%;"&gt;http://www.computerinfo.com.cn&lt;wbr&gt;/classroom/chajian/chajian2.zip&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;下 載這個外掛。外掛的安裝方法：解壓縮後複制到Dreamweave&lt;wbr&gt;r下的資料夾ConfigurationObjects內的一個新&lt;wbr&gt;增資料夾裡面即可。重 新啟動Dreamweaver之後，我們就可以在物件面板之中找到&lt;wbr&gt;新安裝的外掛了。點擊外掛的圖示，在跳出的對話框中填入圖像的存放&lt;wbr&gt;位址以及圖像的顯示位 置就可以了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;26. 製作滑鼠移上去後有變化的動態選單&lt;br /&gt;所 謂動態選單其實是兩幅圖，一幅是滑鼠不放在上面所顯示的&lt;wbr&gt;，另一副是滑鼠移上去所顯示的。我們可以利用Dreamweave&lt;wbr&gt;r提供的行為之中的swap image來實現這個效果。首先插入一副圖片，用滑鼠點選它&lt;wbr&gt;，在屬性面版的連線欄內輸入要連線的網頁。然後開啟行為面板添&lt;wbr&gt;，點擊「+」號，選取swap image。接著出現一個視窗，要你選取滑鼠移上去後所顯示的圖片&lt;wbr&gt;，在此選取第二副圖片，點擊「確定」。好了，效果完成了，多簡單。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;27. 用Dreamweaver製作出一個類似於下拉選單的效果&lt;br /&gt;製 作一個類似於下拉選單的效果需要用到層的隱藏和顯示特性&lt;wbr&gt;。具體的方法是：在頁面中插入一個單行多列的表格&lt;wbr&gt;，作為你的選單條。表格的列數由選單選項的多少決 定。插入一個層，在層中輸入第一個下拉選單的內容&lt;wbr&gt;，並把這個層移動到表格第一列的下面。同理，對其他選單項也作如上&lt;wbr&gt;的動作，插入相應的層。把所有層的顯示 屬性(vis)改為隱藏（Hidden）。&lt;br /&gt;選取表格的第一個單元，點選視窗（Windows）→行為&lt;wbr&gt;（Behaviors），跳出行為面板。 按下「+」加入行為Show-Hide layers，並將第一個層（Layer1）屬性改為顯示&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;(Show)，其他層的屬性改為隱藏(Hide)&lt;wbr&gt;。接著在行為面板中編輯這個行為，將它的觸發事\n件(events)改為&lt;i&gt;onMouse&lt;/i&gt;over&lt;wbr&gt;。這樣，當滑鼠移動到第一個表格單元之上時，第一個下拉選單就會顯\n示出來。接著再加入一個行為Show-Hide\nlayers，並將所有層的屬性改為隱藏。接著在行為面板中編輯這&lt;wbr&gt;個行為，將它的觸發事件(events)改為&lt;i&lt;wbr&gt;&gt;onMouse&lt;\n/I&gt;out。這樣當滑鼠從第一個表格單元之上移開時&lt;wbr&gt;，第一個下拉選單就會隱藏起來。對其他的選單項重複上述動作&lt;wbr&gt;。但要注意設定「選單二」時，第二\n層顯示，其他層隱藏；設定「選單三」時，第三層顯示，其他層隱藏&lt;wbr&gt;；依此類推下去。好了，做好了，按F12看看吧。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;28. 輕鬆製作下載檔案&lt;br /&gt;用Dreamweaver其實很簡單，把要讓瀏覽者下載的檔案名寫&lt;wbr&gt;上，然後拖曳滑鼠選取這段文字，在文字的屬性面板上「Link&lt;wbr&gt;」的屬性輸入框中寫上檔案名就行了。注意：若被下載的檔案與該網頁&lt;wbr&gt;不在同一目錄下，則檔案名必須包括相對路徑，否則在下載時將提示找&lt;wbr&gt;不到檔案。\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;29. 利用Dreamweaver的書籤製作跳轉連結&lt;br /&gt;利\n用Dreamweaver的書籤我們可以實現這個功能&lt;wbr&gt;。具體方法是：將游標移到你想跳轉到的地方，選取選單中的「插入&lt;wbr&gt;（Insert）→書籤（Name\nAnchor）」，輸入書籤的名稱。接下來，在你想呼叫連結的連結&lt;wbr&gt;目的框中填入「#書籤名稱」，這樣一個頁面內的跳轉連結就做好了&lt;wbr&gt;。在這裡，若果我們在書\n籤名稱前填入網頁的名稱，就會跳轉到其他頁面中的書籤處。\n比如說我們在Link處填入「index.htm#top」，當瀏覽者點擊這個連結時就會跳轉到index頁面中的top書&lt;wbr&gt;籤處。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;30. 去掉圖片和表格接觸地方的空隙&lt;br /&gt;要使圖片和表格接觸的地方不留空隙，僅在表格屬性面板上把外框線&lt;wbr&gt;（border）設為0是不行的，還需要在表格的屬性面板上把單元&lt;wbr&gt;格的兩個屬性設為0（即cellspacing\u003d&amp;quot;0&lt;wbr&gt;&amp;quot;和cellpadding\u003d&amp;quot;0&amp;quot;）。 \n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;31. 用TracingImage幫助定位網頁中各元素的位置&lt;br /&gt;TracingImage\n是Dreamweaver一個非常有效的功能，它容許使用者在網頁&lt;wbr&gt;中將原來的圖案設計作為輔助的背景。這麼一來，使用者就可以非常方&lt;wbr&gt;便地定位文字、圖像、\n表格、層等網頁元素在該頁面中的位置了。TracingImage&lt;wbr&gt;的具體使用是這樣的：首先使用各種繪圖軟體作出一個想像中的網頁排&lt;wbr&gt;版格局圖，然後將此圖\n儲存為網路圖像格式（內含gif、jpg、jpeg和png）&lt;wbr&gt;。用Dreamweaver開啟你所編輯的網頁，在頁面的空白區點&lt;wbr&gt;選右鍵，選取「Page\nProperties...」，然後在跳出的對話框中的Traci&lt;wbr&gt;ng Image項中輸入剛才建立的網頁排版格局圖所在位置&lt;wbr&gt;。再在Image\nTransparen中設定TracingImage的透明度&lt;wbr&gt;，OK。這樣你就可以在目前網頁中方便地定位各個網頁元素的位置了&lt;wbr&gt;。使用了\nTracingImage的網頁在用Dreamweaver編輯時&lt;wbr&gt;不會再顯示背景圖案，但當使用瀏覽器瀏覽時正好相反",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;(Show)，其他層的屬性改為隱藏(Hide)&lt;wbr&gt;。接著在行為面板中編輯這個行為，將它的觸發事 件(events)改為&lt;i&gt;onMouse&lt;/i&gt;over&lt;wbr&gt;。這樣，當滑鼠移動到第一個表格單元之上時，第一個下拉選單就會顯 示出來。接著再加入一個行為Show-Hide layers，並將所有層的屬性改為隱藏。接著在行為面板中編輯這&lt;wbr&gt;個行為，將它的觸發事件(events)改為&lt;i&lt;wbr&gt;&gt;onMouse&lt; /I&gt;out。這樣當滑鼠從第一個表格單元之上移開時&lt;wbr&gt;，第一個下拉選單就會隱藏起來。對其他的選單項重複上述動作&lt;wbr&gt;。但要注意設定「選單二」時，第二 層顯示，其他層隱藏；設定「選單三」時，第三層顯示，其他層隱藏&lt;wbr&gt;；依此類推下去。好了，做好了，按F12看看吧。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;28. 輕鬆製作下載檔案&lt;br /&gt;用Dreamweaver其實很簡單，把要讓瀏覽者下載的檔案名寫&lt;wbr&gt;上，然後拖曳滑鼠選取這段文字，在文字的屬性面板上「Link&lt;wbr&gt;」的屬性輸入框中寫上檔案名就行了。注意：若被下載的檔案與該網頁&lt;wbr&gt;不在同一目錄下，則檔案名必須包括相對路徑，否則在下載時將提示找&lt;wbr&gt;不到檔案。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;29. 利用Dreamweaver的書籤製作跳轉連結&lt;br /&gt;利 用Dreamweaver的書籤我們可以實現這個功能&lt;wbr&gt;。具體方法是：將游標移到你想跳轉到的地方，選取選單中的「插入&lt;wbr&gt;（Insert）→書籤（Name Anchor）」，輸入書籤的名稱。接下來，在你想呼叫連結的連結&lt;wbr&gt;目的框中填入「#書籤名稱」，這樣一個頁面內的跳轉連結就做好了&lt;wbr&gt;。在這裡，若果我們在書 籤名稱前填入網頁的名稱，就會跳轉到其他頁面中的書籤處。 比如說我們在Link處填入「index.htm#top」，當瀏覽者點擊這個連結時就會跳轉到index頁面中的top書&lt;wbr&gt;籤處。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;30. 去掉圖片和表格接觸地方的空隙&lt;br /&gt;要使圖片和表格接觸的地方不留空隙，僅在表格屬性面板上把外框線&lt;wbr&gt;（border）設為0是不行的，還需要在表格的屬性面板上把單元&lt;wbr&gt;格的兩個屬性設為0（即cellspacing="0&lt;wbr&gt;"和cellpadding="0"）。 &lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;31. 用TracingImage幫助定位網頁中各元素的位置&lt;br /&gt;TracingImage 是Dreamweaver一個非常有效的功能，它容許使用者在網頁&lt;wbr&gt;中將原來的圖案設計作為輔助的背景。這麼一來，使用者就可以非常方&lt;wbr&gt;便地定位文字、圖像、 表格、層等網頁元素在該頁面中的位置了。TracingImage&lt;wbr&gt;的具體使用是這樣的：首先使用各種繪圖軟體作出一個想像中的網頁排&lt;wbr&gt;版格局圖，然後將此圖 儲存為網路圖像格式（內含gif、jpg、jpeg和png）&lt;wbr&gt;。用Dreamweaver開啟你所編輯的網頁，在頁面的空白區點&lt;wbr&gt;選右鍵，選取「Page Properties...」，然後在跳出的對話框中的Traci&lt;wbr&gt;ng Image項中輸入剛才建立的網頁排版格局圖所在位置&lt;wbr&gt;。再在Image Transparen中設定TracingImage的透明度&lt;wbr&gt;，OK。這樣你就可以在目前網頁中方便地定位各個網頁元素的位置了&lt;wbr&gt;。使用了 TracingImage的網頁在用Dreamweaver編輯時&lt;wbr&gt;不會再顯示背景圖案，但當使用瀏覽器瀏覽時正好相反&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;，TracingImage不見了，\n所見的就是經由編輯的網頁（當然能夠顯示背景圖案）。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;32. 關於「Convert Table widths to Pixels」和「Convert Table widths to Percent」\n&lt;br /&gt;「Convert\nTable widths to Pixels」和「Convert Table widths to\nPercent」是Dreamweaver兩個設定表格寬度的重要&lt;wbr&gt;功能。當你開啟一個帶有表格的網頁時，在狀態列中點中&lt;wbr&gt;〈table〉標籤，在隨後顯示出\n的表格屬性工具面板中就能看到這兩個按鈕了。顧名思義&lt;wbr&gt;「Convert Table widths to\nPixels」就是將表格中所有單元的寬度以像素表示，而&lt;wbr&gt;「Convert Table widths to\nPercent」是將表格中所有單元的寬度以百分比表示&lt;wbr&gt;。仔細想想他們的作用，若果將一個表格的寬度全以像素表示&lt;wbr&gt;，但瀏覽視窗被放大時，表格就不會隨之放\n大單元格的寬度。而使用了「Convert Table widths to\nPercent」後能夠使你在640×480解析度下建立的100&lt;wbr&gt;%寬的表格在更高的解析度下依舊保持100%的寬度&lt;wbr&gt;。所以活用這兩個功能可以使網頁排版\n事半功倍。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;33. 呼叫Style而不致使網頁原代碼混亂不堪&lt;br /&gt;呼\n叫Style的方法很多，你可以點選右鍵選取Custon\nStyle來呼叫Style規範，也可以在狀態列中的元素清單上點&lt;wbr&gt;選右鍵來呼叫Style。雖然不同的方法達到的效果看似一樣&lt;wbr&gt;，但實際上產生的HTML代\n碼則完全不同。比如用Custon\nStyle來呼叫Style規範，在網頁代碼中就生成一個&lt;wbr&gt;〈span〉標籤，這樣標籤一多就會使檔案十分臃腫而且影響瀏覽器&lt;wbr&gt;的解析速度，所以我建議盡量使\n用狀態列中的元素清單來呼叫Style。還有一個小技巧&lt;wbr&gt;，若果你要使用一個Style定義某表格單元中的所有文字&lt;wbr&gt;，只要在〈td〉標籤中呼叫Style就\n行了，而不需要在一個個定義〈p〉標籤。注意這個方法不適用於&lt;wbr&gt;〈table〉標籤，因為在〈table〉標籤中用Style定義&lt;wbr&gt;的文字格式會被\nNetscape忽略。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;34. 使用定制視窗功能測試網頁在不同解析度下的效果&lt;br /&gt;誰都不希望看見自己辛辛苦苦做的網頁在不同的解析度下面目全非&lt;wbr&gt;，所以測試網頁在不同解析度下的瀏覽效果是網頁製作中很重要的一步&lt;wbr&gt;。我們可以在Dreamweaver的動作界面中的狀態列中間&lt;wbr&gt;，選取需要的解析度來調節視窗大小，從而實現在不同解析度下測試網&lt;wbr&gt;頁效果。\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;35. 上傳網站時無需使用第三方FTP軟體&lt;br /&gt;Dreamweaver\n中融入了FTP功能，而且為網站上傳作了最佳化。我們可以做一個簡&lt;wbr&gt;單的比較，當你使用一般的FTP軟體上傳網站時，是不是都按近端機&lt;wbr&gt;上的網站目錄在伺服器\n中新增目錄，然後再一個個檔案上傳。這種做法實在沒錯&lt;wbr&gt;，但由於近端機中的網站目錄中並不是每個檔案都被網頁呼叫&lt;wbr&gt;（比如在建網頁時留下的備份檔案），所以篩\n選檔案的繁重工作量只有使用者自己知道。但使用Dreamweav&lt;wbr&gt;er上傳網頁就可以方便得多，由於FTP功能在幕後為使用者進行了&lt;wbr&gt;許多必要的工作，所以\n使用者只要將網站地圖內關聯的HTML檔案上傳，Dreamwea&lt;wbr&gt;",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;，TracingImage不見了， 所見的就是經由編輯的網頁（當然能夠顯示背景圖案）。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;32. 關於「Convert Table widths to Pixels」和「Convert Table widths to Percent」&lt;br /&gt;「Convert Table widths to Pixels」和「Convert Table widths to Percent」是Dreamweaver兩個設定表格寬度的重要&lt;wbr&gt;功能。當你開啟一個帶有表格的網頁時，在狀態列中點中&lt;wbr&gt;〈table〉標籤，在隨後顯示出 的表格屬性工具面板中就能看到這兩個按鈕了。顧名思義&lt;wbr&gt;「Convert Table widths to Pixels」就是將表格中所有單元的寬度以像素表示，而&lt;wbr&gt;「Convert Table widths to Percent」是將表格中所有單元的寬度以百分比表示&lt;wbr&gt;。仔細想想他們的作用，若果將一個表格的寬度全以像素表示&lt;wbr&gt;，但瀏覽視窗被放大時，表格就不會隨之放 大單元格的寬度。而使用了「Convert Table widths to Percent」後能夠使你在640×480解析度下建立的100&lt;wbr&gt;%寬的表格在更高的解析度下依舊保持100%的寬度&lt;wbr&gt;。所以活用這兩個功能可以使網頁排版 事半功倍。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;33. 呼叫Style而不致使網頁原代碼混亂不堪&lt;br /&gt;呼 叫Style的方法很多，你可以點選右鍵選取Custon Style來呼叫Style規範，也可以在狀態列中的元素清單上點&lt;wbr&gt;選右鍵來呼叫Style。雖然不同的方法達到的效果看似一樣&lt;wbr&gt;，但實際上產生的HTML代 碼則完全不同。比如用Custon Style來呼叫Style規範，在網頁代碼中就生成一個&lt;wbr&gt;〈span〉標籤，這樣標籤一多就會使檔案十分臃腫而且影響瀏覽器&lt;wbr&gt;的解析速度，所以我建議盡量使 用狀態列中的元素清單來呼叫Style。還有一個小技巧&lt;wbr&gt;，若果你要使用一個Style定義某表格單元中的所有文字&lt;wbr&gt;，只要在〈td〉標籤中呼叫Style就 行了，而不需要在一個個定義〈p〉標籤。注意這個方法不適用於&lt;wbr&gt;〈table〉標籤，因為在〈table〉標籤中用Style定義&lt;wbr&gt;的文字格式會被 Netscape忽略。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;34. 使用定制視窗功能測試網頁在不同解析度下的效果&lt;br /&gt;誰都不希望看見自己辛辛苦苦做的網頁在不同的解析度下面目全非&lt;wbr&gt;，所以測試網頁在不同解析度下的瀏覽效果是網頁製作中很重要的一步&lt;wbr&gt;。我們可以在Dreamweaver的動作界面中的狀態列中間&lt;wbr&gt;，選取需要的解析度來調節視窗大小，從而實現在不同解析度下測試網&lt;wbr&gt;頁效果。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;35. 上傳網站時無需使用第三方FTP軟體&lt;br /&gt;Dreamweaver 中融入了FTP功能，而且為網站上傳作了最佳化。我們可以做一個簡&lt;wbr&gt;單的比較，當你使用一般的FTP軟體上傳網站時，是不是都按近端機&lt;wbr&gt;上的網站目錄在伺服器 中新增目錄，然後再一個個檔案上傳。這種做法實在沒錯&lt;wbr&gt;，但由於近端機中的網站目錄中並不是每個檔案都被網頁呼叫&lt;wbr&gt;（比如在建網頁時留下的備份檔案），所以篩 選檔案的繁重工作量只有使用者自己知道。但使用Dreamweav&lt;wbr&gt;er上傳網頁就可以方便得多，由於FTP功能在幕後為使用者進行了&lt;wbr&gt;許多必要的工作，所以 使用者只要將網站地圖內關聯的HTML檔案上傳，Dreamwea&lt;wbr&gt;&lt;script&gt;&lt;!-- D(["mb","ver就會自動將與此HTML檔案關聯的所有其他近端檔案一併上傳&lt;wbr&gt;（如圖像、ZIP檔\n案、FLASH檔案甚至是各種REAL檔案）。使用Dreamwe&lt;wbr&gt;aver內帶的FTP功能的具體做法是：編輯已經定義過的SITE&lt;wbr&gt;，在「Site\nDefinition for...」面板中選取「Web Server Info」。若果網頁是通過FTP模式上傳的話，將「Server\nAccess」設為FTP，在FTP Host中添入FTP伺服器的位址，在Host\nDirectory中添入遠端登入目錄，在Login中添入使用者&lt;wbr&gt;名，再填好Password。經由了以上的設定，就可以在Site&lt;wbr&gt;面板中按\nConnect按鈕，當Dreamweaver成功連入伺服器後&lt;wbr&gt;，Connect按鈕會自動變為Disconnect&lt;wbr&gt;，並且在一旁亮起一個小綠燈。接著要\n做的事就是在要上傳的HTML檔案上點選右鍵，選取「Put&lt;wbr&gt;」即可。當此HTML檔案上傳成功後，狀態條中將顯示Put Depanding\nFile，說明Dreamweaver正在上傳這個HTML檔案所&lt;wbr&gt;呼叫的其他近端檔案。不僅如此，Dreamweaver還可以直接&lt;wbr&gt;下載伺服器上的檔案進\n行修改，方法麼，只要使試試Put旁的Get按鈕就明白了。&lt;/span&gt;&lt;/p&gt;&lt;div&gt;\n&lt;font&gt;36. 實現用滑鼠指向連結時出現下劃線的效果&lt;br /&gt;有些網頁的連結，原先沒有下劃線，你把滑鼠指向連結處&lt;wbr&gt;，才會出現下劃線，滑鼠移掉下劃線就又沒有了。這種效果其實可以用&lt;wbr&gt;層疊型態表（CSS）來實現，在Dreamweaver中編輯層疊&lt;wbr&gt;型態表不用編寫代碼，具體動作方法如下：&lt;br /&gt;（1）在快速啟動欄中點擊層疊型態表按鈕（就是把滑鼠放上去顯示&lt;wbr&gt;「show css styles」的那個按鈕），在跳出的CSS Styles面板上按兩下（none）； \n&lt;br /&gt;（2）此時，可看到跳出的Edit Style Sheet 面板，在該面板上按New按鈕；&lt;br /&gt;（3）\n再在跳出的New Style 面板上點取Redefine HTML\nTag（重新定義HTML標示）再在Tag中選取「a」&lt;wbr&gt;（超級連結標示）標示後按OK按鈕；（4）這時可看到跳出的Sty&lt;wbr&gt;le dehinition\nfor a\n的對話框，在此對話框中可以設定超級連結的許多屬性&lt;wbr&gt;，你可以按你的意願設定，但我們這裡主要是要去掉那討厭的下劃線&lt;wbr&gt;，所以我們在decoration\n屬性中選取「none」，這樣就把下劃線去掉了；然後我們再選取彩&lt;wbr&gt;色為：#339966。按ＯＫ按鈕返回到Edit Style Sheet 面板；&lt;br /&gt;（5）在Edit Style Sheet 面板上再按New按鈕；&lt;br /&gt;（6）在跳出的New Style 面板上點取Use CSS Selector ，再在該面板上的selector選取框中選取「a:hover&lt;wbr&gt;」（定義當滑鼠在超級連結上時連結的屬性），按OK按鈕；&lt;br /&gt;（7）\n在跳出的Style dehinition for a:hover 的對話框中，我們在decoration\n屬性中選取「underline」，這樣就把下劃線又加上了&lt;wbr&gt;；然後我們再選取彩色為：#FF3300。按OK按鈕返回到Edi&lt;wbr&gt;t Style\nSheet 面板；&lt;br /&gt;（8）在Edit Style Sheet 面板上再按Don按鈕，至此所有設定結束，你在Dreamweav&lt;wbr&gt;er的源代碼檢視窗中將看到在與之間如下所示的代碼：&lt;br /&gt;&lt;br /&gt;37. 實現定義的超級連結文字彩色&lt;br /&gt;文字超級連結的彩色（內含未被訪問的連結彩色、滑鼠的連結上的彩色&lt;wbr&gt;、已被訪問過的連結彩色等等）可以用層疊型態表（CSS）定義&lt;wbr&gt;，下面就介紹如何能隨心所欲地設定文字連結的彩色。&lt;br /&gt;（1）超級連結的預設彩色是：未被訪問的超級連結是藍色&lt;wbr&gt;、被訪問過的超級連結是紫色； \n&lt;br /&gt;（2）要想使CSS定義的彩色起作用，在超級連結的文字的彩色屬性&lt;wbr&gt;中什麼都不要填；&lt;br /&gt;（3）若你已定義了文字的彩色，發現CSS中定義的超級連結彩色不&lt;wbr&gt;起作用，你可以取消文字的彩色定義，或取消超級連結再重新定義一次&lt;wbr&gt;，CSS定義的彩色就起作用了；&lt;br /&gt;（4）\n超級連結上各種狀態下文字彩色的關係：一旦定義了被訪問過的連結的&lt;wbr&gt;彩色（A:\nvisited），則當連結被訪問過後，該連結的彩色不再改變&lt;wbr&gt;，即定義滑鼠在超級連結上的彩色（a:\nhover）將不起作用了。若不定義被訪問過的連結的彩色（A: visited），則當滑鼠在超級連結上顯示a: hover\n中定義的彩色，當滑鼠移開時顯示a 中定義的彩色。 ",1] );  //--&gt;&lt;/script&gt;ver就會自動將與此HTML檔案關聯的所有其他近端檔案一併上傳&lt;wbr&gt;（如圖像、ZIP檔 案、FLASH檔案甚至是各種REAL檔案）。使用Dreamwe&lt;wbr&gt;aver內帶的FTP功能的具體做法是：編輯已經定義過的SITE&lt;wbr&gt;，在「Site Definition for...」面板中選取「Web Server Info」。若果網頁是通過FTP模式上傳的話，將「Server Access」設為FTP，在FTP Host中添入FTP伺服器的位址，在Host Directory中添入遠端登入目錄，在Login中添入使用者&lt;wbr&gt;名，再填好Password。經由了以上的設定，就可以在Site&lt;wbr&gt;面板中按 Connect按鈕，當Dreamweaver成功連入伺服器後&lt;wbr&gt;，Connect按鈕會自動變為Disconnect&lt;wbr&gt;，並且在一旁亮起一個小綠燈。接著要 做的事就是在要上傳的HTML檔案上點選右鍵，選取「Put&lt;wbr&gt;」即可。當此HTML檔案上傳成功後，狀態條中將顯示Put Depanding File，說明Dreamweaver正在上傳這個HTML檔案所&lt;wbr&gt;呼叫的其他近端檔案。不僅如此，Dreamweaver還可以直接&lt;wbr&gt;下載伺服器上的檔案進 行修改，方法麼，只要使試試Put旁的Get按鈕就明白了。&lt;/span&gt;&lt;/p&gt;&lt;div&gt; &lt;span style="font-size:130%;"&gt;36. 實現用滑鼠指向連結時出現下劃線的效果&lt;br /&gt;有些網頁的連結，原先沒有下劃線，你把滑鼠指向連結處&lt;wbr&gt;，才會出現下劃線，滑鼠移掉下劃線就又沒有了。這種效果其實可以用&lt;wbr&gt;層疊型態表（CSS）來實現，在Dreamweaver中編輯層疊&lt;wbr&gt;型態表不用編寫代碼，具體動作方法如下：&lt;br /&gt;（1）在快速啟動欄中點擊層疊型態表按鈕（就是把滑鼠放上去顯示&lt;wbr&gt;「show css styles」的那個按鈕），在跳出的CSS Styles面板上按兩下（none）； &lt;br /&gt;（2）此時，可看到跳出的Edit Style Sheet 面板，在該面板上按New按鈕；&lt;br /&gt;（3） 再在跳出的New Style 面板上點取Redefine HTML Tag（重新定義HTML標示）再在Tag中選取「a」&lt;wbr&gt;（超級連結標示）標示後按OK按鈕；（4）這時可看到跳出的Sty&lt;wbr&gt;le dehinition for a 的對話框，在此對話框中可以設定超級連結的許多屬性&lt;wbr&gt;，你可以按你的意願設定，但我們這裡主要是要去掉那討厭的下劃線&lt;wbr&gt;，所以我們在decoration 屬性中選取「none」，這樣就把下劃線去掉了；然後我們再選取彩&lt;wbr&gt;色為：#339966。按ＯＫ按鈕返回到Edit Style Sheet 面板；&lt;br /&gt;（5）在Edit Style Sheet 面板上再按New按鈕；&lt;br /&gt;（6）在跳出的New Style 面板上點取Use CSS Selector ，再在該面板上的selector選取框中選取「a:hover&lt;wbr&gt;」（定義當滑鼠在超級連結上時連結的屬性），按OK按鈕；&lt;br /&gt;（7） 在跳出的Style dehinition for a:hover 的對話框中，我們在decoration 屬性中選取「underline」，這樣就把下劃線又加上了&lt;wbr&gt;；然後我們再選取彩色為：#FF3300。按OK按鈕返回到Edi&lt;wbr&gt;t Style Sheet 面板；&lt;br /&gt;（8）在Edit Style Sheet 面板上再按Don按鈕，至此所有設定結束，你在Dreamweav&lt;wbr&gt;er的源代碼檢視窗中將看到在與之間如下所示的代碼：&lt;br /&gt;&lt;br /&gt;37. 實現定義的超級連結文字彩色&lt;br /&gt;文字超級連結的彩色（內含未被訪問的連結彩色、滑鼠的連結上的彩色&lt;wbr&gt;、已被訪問過的連結彩色等等）可以用層疊型態表（CSS）定義&lt;wbr&gt;，下面就介紹如何能隨心所欲地設定文字連結的彩色。&lt;br /&gt;（1）超級連結的預設彩色是：未被訪問的超級連結是藍色&lt;wbr&gt;、被訪問過的超級連結是紫色； &lt;br /&gt;（2）要想使CSS定義的彩色起作用，在超級連結的文字的彩色屬性&lt;wbr&gt;中什麼都不要填；&lt;br /&gt;（3）若你已定義了文字的彩色，發現CSS中定義的超級連結彩色不&lt;wbr&gt;起作用，你可以取消文字的彩色定義，或取消超級連結再重新定義一次&lt;wbr&gt;，CSS定義的彩色就起作用了；&lt;br /&gt;（4） 超級連結上各種狀態下文字彩色的關係：一旦定義了被訪問過的連結的&lt;wbr&gt;彩色（A: visited），則當連結被訪問過後，該連結的彩色不再改變&lt;wbr&gt;，即定義滑鼠在超級連結上的彩色（a: hover）將不起作用了。若不定義被訪問過的連結的彩色（A: visited），則當滑鼠在超級連結上顯示a: hover 中定義的彩色，當滑鼠移開時顯示a 中定義的彩色。 &lt;script&gt;&lt;!-- D(["mb","&lt;br /&gt;從上述可以看出，文字連結的彩色實際上只能在兩種彩色之間變換&lt;wbr&gt;，並沒有像有些文章中講的那樣可以在多種彩色之間變換&lt;wbr&gt;，但由於用那兩種彩色可以任意，所以應該講彩色的選取範圍還是比較&lt;wbr&gt;大的。 &lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;font&gt;38.在Dreamweaver中把圖形放在最中間&lt;br /&gt;點擊選取圖形，在圖形的屬性面板的右上角Align（對齊屬性&lt;wbr&gt;）邊上有個下拉框，在下拉框中選取，則文字在圖片四周繞排&lt;wbr&gt;。若是單獨圖片在中間，則在圖像面板上點取齊中屬性即可。 \n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;39.如何使用Behaviors 功能，而又不連結到任何地方去&lt;br /&gt;選取要作為超級連結的元素（一幅圖片或一段文字）&lt;wbr&gt;，在屬性面板上的位址欄（Link）中不填寫任何連結位址&lt;wbr&gt;，只加上一個「#」號，（引號不內含在內）。這樣即可以使用Beh&lt;wbr&gt;aviors 功能，而又不連結到任何地方去了。 \n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;40.實現在一張（較大）圖片上做出幾個不同的連結&lt;br /&gt;在Dreamweaver\n中，這就是使用所謂的設定「圖像熱區域」。先選中圖像&lt;wbr&gt;，然後在圖像屬性面板上有一個「Map」工具列，在其下方有三個淡&lt;wbr&gt;藍色的工具圖示，即「矩形」、「圓\n形」或「多邊形」，你可以根據需要選取一個（用滑鼠點一下就行）&lt;wbr&gt;，再把滑鼠移圖像上，按下滑鼠左鍵，拖曳滑鼠就畫出了一塊淡藍色的&lt;wbr&gt;區域（不用擔心這塊淡藍\n色區域會破壞你的圖像，在瀏覽器中是不顯示的），這時你在屬性面板&lt;wbr&gt;上把需連結的網頁位址添上就行了。你需要幾個連結就畫幾塊區域&lt;wbr&gt;，隨你的便。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;41. 製作目錄樹&lt;br /&gt;在\n總目錄的前方有一個「+&amp;quot;，一按這個「+&amp;quot;，即可顯示其下子目錄&lt;wbr&gt;，「+&amp;quot;即變成「-&amp;quot;，一按「-&amp;quot;，即可隱藏其下子目錄&lt;wbr&gt;，就像在資源管理器中一樣，這需要\n做二個頁面，一個頁面寫上總目錄，一個頁面寫上子目錄&lt;wbr&gt;。把總目錄的頁面上的「+」號設定成超級連結，在「Link&lt;wbr&gt;」欄中添上子目錄頁面的位址。把子目錄的\n頁面上的「-」號設定成超級連結，在「Link」欄中添上總目錄頁&lt;wbr&gt;面的位址。具體效果可看一看Dreamweaver的幫助文件&lt;wbr&gt;，在這幫助文件裡也是按一\n下總目錄，跳出子目錄，按下子目錄上的總目錄則返回到總目錄&lt;wbr&gt;，只是沒用「+」、「-」表示而已。你再看一下該文件的源代碼就一&lt;wbr&gt;目瞭然了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;42. 在Dreamweaver中輕鬆設定行間距&lt;br /&gt;\n用層疊型態表（CSS）來實現，在Dreamweaver中編輯層&lt;wbr&gt;疊型態表不用編寫代碼，具體動作方法如下：&lt;br /&gt;（1）在快速啟動欄中點擊層疊型態表按鈕（就是把滑鼠放上去顯示&lt;wbr&gt;「show css styles」的那個按鈕），在跳出的CSS Styles面板上按兩下（none）；&lt;br /&gt;（2）此時，可看到跳出的Edit Style Sheet 面板，在該面板上按New按鈕；&lt;br /&gt;（3）再在跳出的New Style 面板上點取Redefine HTML Tag（重新定義HTML標示），再在Tag中選取「body&lt;wbr&gt;」標示後按OK按鈕； \n&lt;br /&gt;（4）\n這時可看到跳出的Style dehinition for body\n的對話框，在此對話框中可以設定「body」標示的許多屬性&lt;wbr&gt;，你可以按你的意願設定，但我們這裡主要是要設定行距&lt;wbr&gt;，所以我們在line屬性輸入框中填上行\n距的像素點數，現在流行的九號字，行距一般用12",1] );  //--&gt;&lt;/script&gt;&lt;br /&gt;從上述可以看出，文字連結的彩色實際上只能在兩種彩色之間變換&lt;wbr&gt;，並沒有像有些文章中講的那樣可以在多種彩色之間變換&lt;wbr&gt;，但由於用那兩種彩色可以任意，所以應該講彩色的選取範圍還是比較&lt;wbr&gt;大的。 &lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;38.在Dreamweaver中把圖形放在最中間&lt;br /&gt;點擊選取圖形，在圖形的屬性面板的右上角Align（對齊屬性&lt;wbr&gt;）邊上有個下拉框，在下拉框中選取，則文字在圖片四周繞排&lt;wbr&gt;。若是單獨圖片在中間，則在圖像面板上點取齊中屬性即可。 &lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;39.如何使用Behaviors 功能，而又不連結到任何地方去&lt;br /&gt;選取要作為超級連結的元素（一幅圖片或一段文字）&lt;wbr&gt;，在屬性面板上的位址欄（Link）中不填寫任何連結位址&lt;wbr&gt;，只加上一個「#」號，（引號不內含在內）。這樣即可以使用Beh&lt;wbr&gt;aviors 功能，而又不連結到任何地方去了。 &lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;40.實現在一張（較大）圖片上做出幾個不同的連結&lt;br /&gt;在Dreamweaver 中，這就是使用所謂的設定「圖像熱區域」。先選中圖像&lt;wbr&gt;，然後在圖像屬性面板上有一個「Map」工具列，在其下方有三個淡&lt;wbr&gt;藍色的工具圖示，即「矩形」、「圓 形」或「多邊形」，你可以根據需要選取一個（用滑鼠點一下就行）&lt;wbr&gt;，再把滑鼠移圖像上，按下滑鼠左鍵，拖曳滑鼠就畫出了一塊淡藍色的&lt;wbr&gt;區域（不用擔心這塊淡藍 色區域會破壞你的圖像，在瀏覽器中是不顯示的），這時你在屬性面板&lt;wbr&gt;上把需連結的網頁位址添上就行了。你需要幾個連結就畫幾塊區域&lt;wbr&gt;，隨你的便。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;41. 製作目錄樹&lt;br /&gt;在 總目錄的前方有一個「+"，一按這個「+"，即可顯示其下子目錄&lt;wbr&gt;，「+"即變成「-"，一按「-"，即可隱藏其下子目錄&lt;wbr&gt;，就像在資源管理器中一樣，這需要 做二個頁面，一個頁面寫上總目錄，一個頁面寫上子目錄&lt;wbr&gt;。把總目錄的頁面上的「+」號設定成超級連結，在「Link&lt;wbr&gt;」欄中添上子目錄頁面的位址。把子目錄的 頁面上的「-」號設定成超級連結，在「Link」欄中添上總目錄頁&lt;wbr&gt;面的位址。具體效果可看一看Dreamweaver的幫助文件&lt;wbr&gt;，在這幫助文件裡也是按一 下總目錄，跳出子目錄，按下子目錄上的總目錄則返回到總目錄&lt;wbr&gt;，只是沒用「+」、「-」表示而已。你再看一下該文件的源代碼就一&lt;wbr&gt;目瞭然了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;42. 在Dreamweaver中輕鬆設定行間距&lt;br /&gt;用層疊型態表（CSS）來實現，在Dreamweaver中編輯層&lt;wbr&gt;疊型態表不用編寫代碼，具體動作方法如下：&lt;br /&gt;（1）在快速啟動欄中點擊層疊型態表按鈕（就是把滑鼠放上去顯示&lt;wbr&gt;「show css styles」的那個按鈕），在跳出的CSS Styles面板上按兩下（none）；&lt;br /&gt;（2）此時，可看到跳出的Edit Style Sheet 面板，在該面板上按New按鈕；&lt;br /&gt;（3）再在跳出的New Style 面板上點取Redefine HTML Tag（重新定義HTML標示），再在Tag中選取「body&lt;wbr&gt;」標示後按OK按鈕； &lt;br /&gt;（4） 這時可看到跳出的Style dehinition for body 的對話框，在此對話框中可以設定「body」標示的許多屬性&lt;wbr&gt;，你可以按你的意願設定，但我們這裡主要是要設定行距&lt;wbr&gt;，所以我們在line屬性輸入框中填上行 距的像素點數，現在流行的九號字，行距一般用12&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;，按OK按鈕返回到Edit Style Sheet 面板，此時已把「body」的行距設定好了；&lt;br /&gt;（5）由於「body」中定義的行距對表格不起作用&lt;wbr&gt;，所以我們再在Edit Style Sheet 面板上再按New按鈕；&lt;br /&gt;（6）再在跳出的New Style 面板上點取Redefine HTML Tag（重新定義HTML標示）再在Tag中選取「td&lt;wbr&gt;」標示後按OK按鈕；&lt;br /&gt;（7）在跳出的Style dehinition for td 的對話框中設定td的行距，按OK按鈕返回到Edit Style Sheet 面板； \n&lt;br /&gt;（8）在Edit Style Sheet 面板上再按Ｄon按鈕，至此所有設定結束，你在Dreamweav&lt;wbr&gt;er的源代碼檢視窗中將看到在與之間如下所示的代碼：style type\u003d&amp;quot;text/css&amp;quot;&lt;br /&gt;!--&lt;br /&gt;body { line-height: 12pt; font-size: 9pt}&lt;br /&gt;td { font-size: 9pt; line-height: 12pt}&lt;br /&gt;-→&lt;br /&gt;\nstyle&lt;br /&gt;有了這段代碼，你在該網頁上的所有文字的行距都確定好了&lt;wbr&gt;，若不滿意，可修改設定。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font&gt;43. 如何設計能使瀏覽者在瀏覽時對網頁字型大小的設定不起作用&lt;br /&gt;用CSS層疊型態表對字型進行強制性控制（像素）。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;44. 實現網頁每過五分鐘刷新一次的效果&lt;br /&gt;在Dreamweaver\n的功能面板上選取「head」功能群組面板，在這面板上點擊&lt;wbr&gt;「Refresh」功能圖示，在跳出的「Insert\nrefresh」對話框中，在「Delay」中輸入要刷新的間隔時&lt;wbr&gt;間，以秒計，例：隔五分鐘刷新一次，則輸入300即可&lt;wbr&gt;。再在該對話框上選取\n「Refresh This Document」(刷新目前視窗)，按OK，大功告成&lt;wbr&gt;。當你再次瀏覽該網頁時，它將自動地隔五分鐘刷新一次。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;45. 解決用IE預覽標準的連結網頁，上傳到網站卻看不見的現象 \n&lt;br /&gt;把\n網頁的所有檔案名統一成小寫（或大寫），再上傳就行了&lt;wbr&gt;。因為很多伺服器使用的是UNIX動作系統，它對大小寫是很敏感的&lt;wbr&gt;，也就是說大寫的檔案名和小寫檔案\n名它認為是兩個檔案，你在上傳時必須注意大小寫。另外要注意&lt;wbr&gt;：超級連結要使用相對路徑，不要用絕對路徑，也不要用中文檔案名。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;46. 製作新開一個視窗開啟網頁的超級連結（即原來的網頁不被覆蓋）\n&lt;br /&gt;在Dreamweaver中，在該連結的屬性面板上把&lt;wbr&gt;「target（目的）」設定為「_blank」即可。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font&gt;47. 隱藏不必要的標籤&lt;br /&gt;當\n使用者在網頁中插入了不可見的元素時，Dreamweaver會自&lt;wbr&gt;動在頁面上加入一個與之相應的元素標籤，以便於使用者選取不可見元&lt;wbr&gt;素。但這並不全是件好\n事，比如你在一個有很多層的頁面中的第一行便插入一個表格&lt;wbr&gt;，就會發現由於首行排序了太多的層元素標籤而使得表格自動退到了頁&lt;wbr&gt;面的第二行，雖然在瀏覽時並不\n影響效果，但這確確實實會阻礙你的工作。所以當你覺得某個元素標籤&lt;wbr&gt;礙手礙腳時，就索性將之屏蔽掉。方法是按Ctrl&lt;wbr&gt;+U開啟Preferences面板，\n在Category中選中Invisibel\nElements，在面板的右邊將會出現所有的元素標籤&lt;wbr&gt;。只要將你討厭的元素標籤前的勾去掉，以後它就保證不會再出現了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;，按OK按鈕返回到Edit Style Sheet 面板，此時已把「body」的行距設定好了；&lt;br /&gt;（5）由於「body」中定義的行距對表格不起作用&lt;wbr&gt;，所以我們再在Edit Style Sheet 面板上再按New按鈕；&lt;br /&gt;（6）再在跳出的New Style 面板上點取Redefine HTML Tag（重新定義HTML標示）再在Tag中選取「td&lt;wbr&gt;」標示後按OK按鈕；&lt;br /&gt;（7）在跳出的Style dehinition for td 的對話框中設定td的行距，按OK按鈕返回到Edit Style Sheet 面板； &lt;br /&gt;（8）在Edit Style Sheet 面板上再按Ｄon按鈕，至此所有設定結束，你在Dreamweav&lt;wbr&gt;er的源代碼檢視窗中將看到在與之間如下所示的代碼：style type="text/css"&lt;br /&gt;!--&lt;br /&gt;body { line-height: 12pt; font-size: 9pt}&lt;br /&gt;td { font-size: 9pt; line-height: 12pt}&lt;br /&gt;-→&lt;br /&gt;style&lt;br /&gt;有了這段代碼，你在該網頁上的所有文字的行距都確定好了&lt;wbr&gt;，若不滿意，可修改設定。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;43. 如何設計能使瀏覽者在瀏覽時對網頁字型大小的設定不起作用&lt;br /&gt;用CSS層疊型態表對字型進行強制性控制（像素）。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;44. 實現網頁每過五分鐘刷新一次的效果&lt;br /&gt;在Dreamweaver 的功能面板上選取「head」功能群組面板，在這面板上點擊&lt;wbr&gt;「Refresh」功能圖示，在跳出的「Insert refresh」對話框中，在「Delay」中輸入要刷新的間隔時&lt;wbr&gt;間，以秒計，例：隔五分鐘刷新一次，則輸入300即可&lt;wbr&gt;。再在該對話框上選取 「Refresh This Document」(刷新目前視窗)，按OK，大功告成&lt;wbr&gt;。當你再次瀏覽該網頁時，它將自動地隔五分鐘刷新一次。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;45. 解決用IE預覽標準的連結網頁，上傳到網站卻看不見的現象 &lt;br /&gt;把 網頁的所有檔案名統一成小寫（或大寫），再上傳就行了&lt;wbr&gt;。因為很多伺服器使用的是UNIX動作系統，它對大小寫是很敏感的&lt;wbr&gt;，也就是說大寫的檔案名和小寫檔案 名它認為是兩個檔案，你在上傳時必須注意大小寫。另外要注意&lt;wbr&gt;：超級連結要使用相對路徑，不要用絕對路徑，也不要用中文檔案名。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;46. 製作新開一個視窗開啟網頁的超級連結（即原來的網頁不被覆蓋）&lt;br /&gt;在Dreamweaver中，在該連結的屬性面板上把&lt;wbr&gt;「target（目的）」設定為「_blank」即可。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;47. 隱藏不必要的標籤&lt;br /&gt;當 使用者在網頁中插入了不可見的元素時，Dreamweaver會自&lt;wbr&gt;動在頁面上加入一個與之相應的元素標籤，以便於使用者選取不可見元&lt;wbr&gt;素。但這並不全是件好 事，比如你在一個有很多層的頁面中的第一行便插入一個表格&lt;wbr&gt;，就會發現由於首行排序了太多的層元素標籤而使得表格自動退到了頁&lt;wbr&gt;面的第二行，雖然在瀏覽時並不 影響效果，但這確確實實會阻礙你的工作。所以當你覺得某個元素標籤&lt;wbr&gt;礙手礙腳時，就索性將之屏蔽掉。方法是按Ctrl&lt;wbr&gt;+U開啟Preferences面板， 在Category中選中Invisibel Elements，在面板的右邊將會出現所有的元素標籤&lt;wbr&gt;。只要將你討厭的元素標籤前的勾去掉，以後它就保證不會再出現了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;script&gt;&lt;!-- D(["mb","&lt;wbr&gt;****************************&lt;br /&gt;48. 解決表格緊貼左上方的問題&lt;br /&gt;對這個問題有幾種解決方法。\n&lt;br /&gt;（1）按下Ctrl+J，跳出Page Properties，將Left、 Top、 Margin Width、 Margin Height 全部設為0。&lt;br /&gt;（2）把下面一段代碼加到你的body中：topmargin\u003d&lt;wbr&gt;&amp;quot;0&amp;quot; leftmargin\u003d&amp;quot;0&amp;quot; ，這個方法只適用於IE。&lt;br /&gt;（3）加入下面代碼：body topmargin\u003d&amp;quot;0&amp;quot; leftmargin\u003d&amp;quot;0&amp;quot; marginheight\u003d&amp;quot;0&amp;quot; marginwidth\u003d&amp;quot;0&amp;quot; ，這個方法適用於Netscape\n&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;font&gt;49. 在Dreamweaver中將圖設為透明alpha設定&lt;br /&gt;html&lt;br /&gt;head&lt;br /&gt;title css /title&lt;br /&gt;meta http-equiv\u003d&amp;quot;Content-Type&amp;quot; content\u003d&amp;quot;text/html; charset\u003dgb2312&amp;quot;&lt;br /&gt;style type\u003dtext/css&lt;br /&gt;.pic{filter:alpha(opacity\u003d50)} \n&lt;br /&gt;\u002fstyle&lt;br /&gt;/head&lt;br /&gt;body bgcolor\u003d&amp;quot;#FFFF00&amp;quot; text\u003d&amp;quot;#000000&amp;quot;&lt;br /&gt;img src\u003d&amp;quot;0008.jpg&amp;quot; width\u003d&amp;quot;303&amp;quot; height\u003d&amp;quot;385&amp;quot; class\u003d&amp;quot;pic&amp;quot;&lt;br /&gt;/body&lt;br /&gt;/html&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;50. 設定表格虛線&lt;br /&gt;（1）作一個1X2的圖，半黑半白，再利用表格做成線。&lt;br /&gt;（2）\n在css裡面設：在css面板裡新增一個style，選取&lt;wbr&gt;「redefine HTML\nTag」，再在下拉選單裡選「table」，在接下來的面板裡&lt;wbr&gt;，category裡選取border。在border裡&lt;wbr&gt;，將top、left、\nright、bottom都設成1像素，彩色設成你將來想要的邊框&lt;wbr&gt;的彩色。到style下拉選單裡選取dashed就可以了&lt;wbr&gt;，只是所有的表格都會用虛線做\n邊框了。&lt;br /&gt;（3）若果你只想讓某一個表格邊框是虛線的話就在html裡設&lt;wbr&gt;。在表格的html裡加上這個：&lt;br /&gt;style\u003d&amp;quot;BORDER-LEFT:\n#000000 1PX DASHED; BORDER-RIGHT: #000000 1PX DASHED; BORDER-TOP:\n#000000 1PX DASHED; BORDER-BOTTOM: #000000 1PX\nDASHED&amp;quot;。彩色是十六位代碼，你可以自己設。方法2&lt;wbr&gt;、3只能在IE瀏覽器裡用，到了Netscape裡一點用處都沒有&lt;wbr&gt;，除非你用做好的底圖填充。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;51. 在Dreamweaver中使插入的FLASH透明 \n&lt;br /&gt;選中插入的swf檔案，開啟原代碼視窗，在object前輸入pa&lt;wbr&gt;ram name\u003d&amp;quot;wmode&amp;quot;&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;52. Dreamweaver4中設定表格亮邊框和暗邊框&lt;br /&gt;\n做一個像素寬度有彩色的表格線&lt;br /&gt;（1）將表格邊框 border設定為0，Cell space設定為0，Cell padding設定為0。&lt;br /&gt;（2）開啟型態面板新增一個型態。選取Border設定邊框屬性 。&lt;br /&gt;（3）選中整張表格套用這個型態即可。",1] );  //--&gt;&lt;/script&gt;&lt;wbr&gt;****************************&lt;br /&gt;48. 解決表格緊貼左上方的問題&lt;br /&gt;對這個問題有幾種解決方法。&lt;br /&gt;（1）按下Ctrl+J，跳出Page Properties，將Left、 Top、 Margin Width、 Margin Height 全部設為0。&lt;br /&gt;（2）把下面一段代碼加到你的body中：topmargin=&lt;wbr&gt;"0" leftmargin="0" ，這個方法只適用於IE。&lt;br /&gt;（3）加入下面代碼：body topmargin="0" leftmargin="0" marginheight="0" marginwidth="0" ，這個方法適用於Netscape &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:130%;"&gt;49. 在Dreamweaver中將圖設為透明alpha設定&lt;br /&gt;html&lt;br /&gt;head&lt;br /&gt;title css /title&lt;br /&gt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&lt;br /&gt;style type=text/css&lt;br /&gt;.pic{filter:alpha(opacity=50)} &lt;br /&gt;/style&lt;br /&gt;/head&lt;br /&gt;body bgcolor="#FFFF00" text="#000000"&lt;br /&gt;img src="0008.jpg" width="303" height="385" class="pic"&lt;br /&gt;/body&lt;br /&gt;/html&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;50. 設定表格虛線&lt;br /&gt;（1）作一個1X2的圖，半黑半白，再利用表格做成線。&lt;br /&gt;（2） 在css裡面設：在css面板裡新增一個style，選取&lt;wbr&gt;「redefine HTML Tag」，再在下拉選單裡選「table」，在接下來的面板裡&lt;wbr&gt;，category裡選取border。在border裡&lt;wbr&gt;，將top、left、 right、bottom都設成1像素，彩色設成你將來想要的邊框&lt;wbr&gt;的彩色。到style下拉選單裡選取dashed就可以了&lt;wbr&gt;，只是所有的表格都會用虛線做 邊框了。&lt;br /&gt;（3）若果你只想讓某一個表格邊框是虛線的話就在html裡設&lt;wbr&gt;。在表格的html裡加上這個：&lt;br /&gt;style="BORDER-LEFT: #000000 1PX DASHED; BORDER-RIGHT: #000000 1PX DASHED; BORDER-TOP: #000000 1PX DASHED; BORDER-BOTTOM: #000000 1PX DASHED"。彩色是十六位代碼，你可以自己設。方法2&lt;wbr&gt;、3只能在IE瀏覽器裡用，到了Netscape裡一點用處都沒有&lt;wbr&gt;，除非你用做好的底圖填充。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;51. 在Dreamweaver中使插入的FLASH透明 &lt;br /&gt;選中插入的swf檔案，開啟原代碼視窗，在object前輸入pa&lt;wbr&gt;ram name="wmode"&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;52. Dreamweaver4中設定表格亮邊框和暗邊框&lt;br /&gt;做一個像素寬度有彩色的表格線&lt;br /&gt;（1）將表格邊框 border設定為0，Cell space設定為0，Cell padding設定為0。&lt;br /&gt;（2）開啟型態面板新增一個型態。選取Border設定邊框屬性 。&lt;br /&gt;（3）選中整張表格套用這個型態即可。&lt;script&gt;&lt;!-- D(["mb","&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;53. 隱藏表格的分隔線&lt;br /&gt;table border rules\u003dcols cellspacing\u003d0 align\u003dleft可以隱藏橫印的分隔線&lt;br /&gt;table border rules\u003drows cellspacing\u003d0 align\u003dright可以隱藏直印的分隔線&lt;br /&gt;table border rules\u003dnone cellspacing\u003d0 align\u003dcenter可以隱藏橫印和直印的分隔線&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;54. 如何選取被遮蓋或隱藏的層&lt;br /&gt;當層被重疊使用時，大層會把小層遮蓋住；當選取了層的隱藏屬性&lt;wbr&gt;，該層就看不見了。當你想對這些層動作時，怎麼辦&lt;wbr&gt;？按F11鍵顯示層面板，所有層號均在上面，要哪層選取哪層就行了&lt;wbr&gt;。&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;55. 在層（或表格中）上編輯文字時自動換行&lt;br /&gt;層\n在用Dreamweaver設計網頁時被大量採用&lt;wbr&gt;，但當你在層上輸入大段文字時發現不會自動換行，無論你怎樣設定層&lt;wbr&gt;的寬度均無濟於事，當然你可以用按\n「SHIFT+ENTER」來換行。但是這樣當你調整層的寬度時又&lt;wbr&gt;不得不一個一個地去刪除它，再又在另一位置加上它&lt;wbr&gt;，其實有三種方法可以解決這個問題：\n&lt;br /&gt;（1）在層疊式樣表*.CSS中「DIV」的式樣定義中加上字型的&lt;wbr&gt;定義；&lt;br /&gt;（2）在網頁源代碼的層定義中加上字型的定義；&lt;br /&gt;（3）選取該段文字，在文字的屬性面板上定義字型。&lt;br /&gt;上述三種方法任選一種都行，但以第一種較好，因為只要改動一次&lt;wbr&gt;，此後只要是呼叫該層疊式樣表的網頁中的所有層都有能自動換行了&lt;wbr&gt;，豈不是一勞永逸。表格同樣存在上述問題，解決方法相同&lt;wbr&gt;，只是在層疊式樣表中在「TD」的式樣定義中加上字型的定義。&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;56. 在Dreamweaver中輸入上下標&lt;br /&gt;若果只是要上下標的話，可以用SUB /SUB 和SUP /SUP。 手動加進去就可以了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************\n&lt;br /&gt;57. 去掉連結的下劃線&lt;br /&gt;將以下代碼加入head  /head之間&lt;br /&gt;style type\u003d&amp;quot;text/css&amp;quot;&lt;br /&gt;!--&lt;br /&gt;a:link{text-decoration:none}&lt;br /&gt;a:hover{text-decoration:none}&lt;br /&gt;a:visited{text-decoration:none}&lt;br /&gt;-→&lt;br /&gt;\u002fstyle&lt;/span&gt;&lt;/p&gt;\n&lt;/div&gt;&lt;p&gt;&lt;font&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;\n&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;--&lt;br /&gt;~~~~~ \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d ~~~~~&lt;br /&gt;        我是東海大野狼啦&lt;br /&gt;~~~~~ 築\u003d夢\u003d踏\u003d實 ~~~~~\n",0] );  //--&gt;&lt;/script&gt;&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;53. 隱藏表格的分隔線&lt;br /&gt;table border rules=cols cellspacing=0 align=left可以隱藏橫印的分隔線&lt;br /&gt;table border rules=rows cellspacing=0 align=right可以隱藏直印的分隔線&lt;br /&gt;table border rules=none cellspacing=0 align=center可以隱藏橫印和直印的分隔線&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;54. 如何選取被遮蓋或隱藏的層&lt;br /&gt;當層被重疊使用時，大層會把小層遮蓋住；當選取了層的隱藏屬性&lt;wbr&gt;，該層就看不見了。當你想對這些層動作時，怎麼辦&lt;wbr&gt;？按F11鍵顯示層面板，所有層號均在上面，要哪層選取哪層就行了&lt;wbr&gt;。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;55. 在層（或表格中）上編輯文字時自動換行&lt;br /&gt;層 在用Dreamweaver設計網頁時被大量採用&lt;wbr&gt;，但當你在層上輸入大段文字時發現不會自動換行，無論你怎樣設定層&lt;wbr&gt;的寬度均無濟於事，當然你可以用按 「SHIFT+ENTER」來換行。但是這樣當你調整層的寬度時又&lt;wbr&gt;不得不一個一個地去刪除它，再又在另一位置加上它&lt;wbr&gt;，其實有三種方法可以解決這個問題：&lt;br /&gt;（1）在層疊式樣表*.CSS中「DIV」的式樣定義中加上字型的&lt;wbr&gt;定義；&lt;br /&gt;（2）在網頁源代碼的層定義中加上字型的定義；&lt;br /&gt;（3）選取該段文字，在文字的屬性面板上定義字型。&lt;br /&gt;上述三種方法任選一種都行，但以第一種較好，因為只要改動一次&lt;wbr&gt;，此後只要是呼叫該層疊式樣表的網頁中的所有層都有能自動換行了&lt;wbr&gt;，豈不是一勞永逸。表格同樣存在上述問題，解決方法相同&lt;wbr&gt;，只是在層疊式樣表中在「TD」的式樣定義中加上字型的定義。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;56. 在Dreamweaver中輸入上下標&lt;br /&gt;若果只是要上下標的話，可以用SUB /SUB 和SUP /SUP。 手動加進去就可以了。&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;******************************&lt;wbr&gt;****************************&lt;br /&gt;57. 去掉連結的下劃線&lt;br /&gt;將以下代碼加入head  /head之間&lt;br /&gt;style type="text/css"&lt;br /&gt;!--&lt;br /&gt;a:link{text-decoration:none}&lt;br /&gt;a:hover{text-decoration:none}&lt;br /&gt;a:visited{text-decoration:none}&lt;br /&gt;-→&lt;br /&gt;/style&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116718335533504713?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/dreamweaver.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116601020487270608</guid><pubDate>Wed, 13 Dec 2006 11:39:00 +0000</pubDate><atom:updated>2006-12-13T19:43:31.690+08:00</atom:updated><title>特殊html字元對照表</title><description>特殊html字元對照表&lt;br /&gt;&amp;amp;lsquo; ‘ left single quote&lt;br /&gt;&amp;amp;rsquo; ’ right single quote&lt;br /&gt;&amp;amp;sbquo; , single low-9 quote&lt;br /&gt;&amp;amp;ldquo; “ left double quote&lt;br /&gt;&amp;amp;rdquo; ” right double quote&lt;br /&gt;&amp;amp;bdquo; " double low-9 quote&lt;br /&gt;&amp;amp;dagger; ＋ dagger&lt;br /&gt;&amp;amp;Dagger; ++ double dagger&lt;br /&gt;&amp;amp;permil; 0/00 per mill sign&lt;br /&gt;&amp;amp;lsaquo; &lt; single left-pointing angle quote&lt;br /&gt;&amp;amp;rsaquo; &gt; single right-pointing angle quote&lt;br /&gt;&amp;amp;spades; ? black spade suit&lt;br /&gt;&amp;amp;clubs; ? black club suit&lt;br /&gt;&amp;amp;hearts; ? black heart suit&lt;br /&gt;&amp;amp;diams; ? black diamond suit&lt;br /&gt;&amp;amp;oline; ￣ overline, = spacing overscore&lt;br /&gt;&amp;amp;larr; ← leftward arrow&lt;br /&gt;&amp;amp;uarr; ↑ upward arrow&lt;br /&gt;&amp;amp;rarr; → rightward arrow&lt;br /&gt;&amp;amp;darr; ↓ downward arrow&lt;br /&gt;&amp;amp;trade; ^(TM) trademark sign&lt;br /&gt;&amp;amp;#00;-&lt;br /&gt;&amp;amp;#08; unused&lt;br /&gt;&amp;amp;#09; horizontal tab&lt;br /&gt;&amp;amp;#10; line feed&lt;br /&gt;&amp;amp;#11; unused&lt;br /&gt;&amp;amp;#32; space&lt;br /&gt;&amp;amp;#33; ! exclamation mark&lt;br /&gt;&amp;amp;quot; &amp;amp;#34; " double quotation mark&lt;br /&gt;&amp;amp;#35; # number sign&lt;br /&gt;&amp;amp;#36; $ dollar sign&lt;br /&gt;&amp;amp;#37; % percent sign&lt;br /&gt;&amp;amp;amp; &amp;amp;#38; &amp;amp; ampersand&lt;br /&gt;&amp;amp;#39; ' apostrophe&lt;br /&gt;&amp;amp;#40; ( left parenthesis&lt;br /&gt;&amp;amp;#41; ) right parenthesis&lt;br /&gt;&amp;amp;#42; * asterisk&lt;br /&gt;&amp;amp;#43; + plus sign&lt;br /&gt;&amp;amp;#44; , comma&lt;br /&gt;&amp;amp;#45; - hyphen&lt;br /&gt;&amp;amp;#46; . period&lt;br /&gt;&amp;amp;frasl; &amp;amp;#47; / slash&lt;br /&gt;&amp;amp;#48;-&lt;br /&gt;&amp;amp;#57; digits 0-9&lt;br /&gt;&amp;amp;#58; : colon&lt;br /&gt;&amp;amp;#59; ; semicolon&lt;br /&gt;&amp;amp;lt; &amp;amp;#60; &lt; less-than sign&lt;br /&gt;&amp;amp;#61; = equals sign&lt;br /&gt;&amp;amp;gt; &amp;amp;#62; &gt; greater-than sign&lt;br /&gt;&amp;amp;#63; ? question mark&lt;br /&gt;&amp;amp;#64; @ at sign&lt;br /&gt;&amp;amp;#65;-&lt;br /&gt;&amp;amp;#90; uppercase letters A-Z&lt;br /&gt;&amp;amp;#91; [ left square bracket&lt;br /&gt;&amp;amp;#92; \ backslash&lt;br /&gt;&amp;amp;#93; ] right square bracket&lt;br /&gt;&amp;amp;#94; ^ caret&lt;br /&gt;&amp;amp;#95; _ horizontal bar (underscore)&lt;br /&gt;&amp;amp;#96; ` grave accent&lt;br /&gt;&amp;amp;#97;-&lt;br /&gt;&amp;amp;#122; lowercase letters a-z&lt;br /&gt;&amp;amp;#123; { left curly brace&lt;br /&gt;&amp;amp;#124; | vertical bar&lt;br /&gt;&amp;amp;#125; } right curly brace&lt;br /&gt;&amp;amp;#126; ~ tilde&lt;br /&gt;&amp;amp;#127;-&lt;br /&gt;&amp;amp;#149; unused&lt;br /&gt;&amp;amp;ndash; &amp;amp;#150; – en dash&lt;br /&gt;&amp;amp;mdash; &amp;amp;#151; — em dash&lt;br /&gt;&amp;amp;#152;-&lt;br /&gt;&amp;amp;#159; unused&lt;br /&gt;&amp;amp;nbsp; &amp;amp;#160; nonbreaking space&lt;br /&gt;&amp;amp;iexcl; &amp;amp;#161; ? inverted exclamation&lt;br /&gt;&amp;amp;cent; &amp;amp;#162; ￠ cent sign&lt;br /&gt;&amp;amp;pound; &amp;amp;#163; ￡ pound sterling&lt;br /&gt;&amp;amp;curren; &amp;amp;#164; ? general currency sign&lt;br /&gt;&amp;amp;yen; &amp;amp;#165; ￥ yen sign&lt;br /&gt;&amp;amp;brvbar; or &amp;amp;brkbar; &amp;amp;#166; ? broken vertical bar&lt;br /&gt;&amp;amp;sect; &amp;amp;#167; § section sign&lt;br /&gt;&amp;amp;uml; or &amp;amp;die; &amp;amp;#168; ‥ umlaut&lt;br /&gt;&amp;amp;copy; &amp;amp;#169; (c) copyright&lt;br /&gt;&amp;amp;ordf; &amp;amp;#170; ^(a) feminine ordinal&lt;br /&gt;&amp;amp;laquo; &amp;amp;#171; ? left angle quote&lt;br /&gt;&amp;amp;not; &amp;amp;#172; ? not sign&lt;br /&gt;&amp;amp;shy; &amp;amp;#173; ? soft hyphen&lt;br /&gt;&amp;amp;reg; &amp;amp;#174; ? registered trademark&lt;br /&gt;&amp;amp;macr; or &amp;amp;hibar; &amp;amp;#175; ¯ macron accent&lt;br /&gt;&amp;amp;deg; &amp;amp;#176; ° degree sign&lt;br /&gt;&amp;amp;plusmn; &amp;amp;#177; ± plus or minus&lt;br /&gt;&amp;amp;sup2; &amp;amp;#178; ^(2) superscript two&lt;br /&gt;&amp;amp;sup3; &amp;amp;#179; ^(3) superscript three&lt;br /&gt;&amp;amp;acute; &amp;amp;#180; ′ acute accent&lt;br /&gt;&amp;amp;micro; &amp;amp;#181; μ micro sign&lt;br /&gt;&amp;amp;para; &amp;amp;#182; ? paragraph sign&lt;br /&gt;&amp;amp;middot; &amp;amp;#183; · middle dot&lt;br /&gt;&amp;amp;cedil; &amp;amp;#184; ﹐ cedilla&lt;br /&gt;&amp;amp;sup1; &amp;amp;#185; ^(1) superscript one&lt;br /&gt;&amp;amp;ordm; &amp;amp;#186; ^(o) masculine ordinal&lt;br /&gt;&amp;amp;raquo; &amp;amp;#187; ? right angle quote&lt;br /&gt;&amp;amp;frac14; &amp;amp;#188; 1/4 one-fourth&lt;br /&gt;&amp;amp;frac12; &amp;amp;#189; 1/2 one-half&lt;br /&gt;&amp;amp;frac34; &amp;amp;#190; 3/4 three-fourths&lt;br /&gt;&amp;amp;iquest; &amp;amp;#191; ? inverted question mark&lt;br /&gt;&amp;amp;Agrave; &amp;amp;#192; A` uppercase A, grave accent&lt;br /&gt;&amp;amp;Aacute; &amp;amp;#193; A' uppercase A, acute accent&lt;br /&gt;&amp;amp;Acirc; &amp;amp;#194; A^ uppercase A, circumflex accent&lt;br /&gt;&amp;amp;Atilde; &amp;amp;#195; A~ uppercase A, tilde&lt;br /&gt;&amp;amp;Auml; &amp;amp;#196; A" uppercase A, umlaut&lt;br /&gt;&amp;amp;Aring; &amp;amp;#197; A* uppercase A, ring&lt;br /&gt;&amp;amp;AElig; &amp;amp;#198; ? uppercase AE&lt;br /&gt;&amp;amp;Ccedil; &amp;amp;#199; C, uppercase C, cedilla&lt;br /&gt;&amp;amp;Egrave; &amp;amp;#200; E` uppercase E, grave accent&lt;br /&gt;&amp;amp;Eacute; &amp;amp;#201; E' uppercase E, acute accent&lt;br /&gt;&amp;amp;Ecirc; &amp;amp;#202; E^ uppercase E, circumflex accent&lt;br /&gt;&amp;amp;Euml; &amp;amp;#203; E" uppercase E, umlaut&lt;br /&gt;&amp;amp;Igrave; &amp;amp;#204; I` uppercase I, grave accent&lt;br /&gt;&amp;amp;Iacute; &amp;amp;#205; I' uppercase I, acute accent&lt;br /&gt;&amp;amp;Icirc; &amp;amp;#206; I^ uppercase I, circumflex accent&lt;br /&gt;&amp;amp;Iuml; &amp;amp;#207; I" uppercase I, umlaut&lt;br /&gt;&amp;amp;ETH; &amp;amp;#208; ? uppercase Eth, Icelandic&lt;br /&gt;&amp;amp;Ntilde; &amp;amp;#209; N~ uppercase N, tilde&lt;br /&gt;&amp;amp;Ograve; &amp;amp;#210; O` uppercase O, grave accent&lt;br /&gt;&amp;amp;Oacute; &amp;amp;#211; O' uppercase O, acute accent&lt;br /&gt;&amp;amp;Ocirc; &amp;amp;#212; O^ uppercase O, circumflex accent&lt;br /&gt;&amp;amp;Otilde; &amp;amp;#213; O~ uppercase O, tilde&lt;br /&gt;&amp;amp;Ouml; &amp;amp;#214; O" uppercase O, umlaut&lt;br /&gt;&amp;amp;times; &amp;amp;#215; × multiplication sign&lt;br /&gt;&amp;amp;Oslash; &amp;amp;#216; ? uppercase O, slash&lt;br /&gt;&amp;amp;Ugrave; &amp;amp;#217; U` uppercase U, grave accent&lt;br /&gt;&amp;amp;Uacute; &amp;amp;#218; U' uppercase U, acute accent&lt;br /&gt;&amp;amp;Ucirc; &amp;amp;#219; U^ uppercase U, circumflex accent&lt;br /&gt;&amp;amp;Uuml; &amp;amp;#220; U" uppercase U, umlaut&lt;br /&gt;&amp;amp;Yacute; &amp;amp;#221; Y' uppercase Y, acute accent&lt;br /&gt;&amp;amp;THORN; &amp;amp;#222; ? uppercase THORN, Icelandic&lt;br /&gt;&amp;amp;szlig; &amp;amp;#223; ? lowercase sharps, German&lt;br /&gt;&amp;amp;agrave; &amp;amp;#224; a` lowercase a, grave accent&lt;br /&gt;&amp;amp;aacute; &amp;amp;#225; a' lowercase a, acute accent&lt;br /&gt;&amp;amp;acirc; &amp;amp;#226; a^ lowercase a, circumflex accent&lt;br /&gt;&amp;amp;atilde; &amp;amp;#227; a~ lowercase a, tilde&lt;br /&gt;&amp;amp;auml; &amp;amp;#228; a" lowercase a, umlaut&lt;br /&gt;&amp;amp;aring; &amp;amp;#229; a* lowercase a, ring&lt;br /&gt;&amp;amp;aelig; &amp;amp;#230; ? lowercase ae&lt;br /&gt;&amp;amp;ccedil; &amp;amp;#231; c, lowercase c, cedilla&lt;br /&gt;&amp;amp;egrave; &amp;amp;#232; e` lowercase e, grave accent&lt;br /&gt;&amp;amp;eacute; &amp;amp;#233; e' lowercase e, acute accent&lt;br /&gt;&amp;amp;ecirc; &amp;amp;#234; e^ lowercase e, circumflex accent&lt;br /&gt;&amp;amp;euml; &amp;amp;#235; e" lowercase e, umlaut&lt;br /&gt;&amp;amp;igrave; &amp;amp;#236; i` lowercase i, grave accent&lt;br /&gt;&amp;amp;iacute; &amp;amp;#237; i' lowercase i, acute accent&lt;br /&gt;&amp;amp;icirc; &amp;amp;#238; i^ lowercase i, circumflex accent&lt;br /&gt;&amp;amp;iuml; &amp;amp;#239; i" lowercase i, umlaut&lt;br /&gt;&amp;amp;eth; &amp;amp;#240; ? lowercase eth, Icelandic&lt;br /&gt;&amp;amp;ntilde; &amp;amp;#241; n~ lowercase n, tilde&lt;br /&gt;&amp;amp;ograve; &amp;amp;#242; o` lowercase o, grave accent&lt;br /&gt;&amp;amp;oacute; &amp;amp;#243; o' lowercase o, acute accent&lt;br /&gt;&amp;amp;ocirc; &amp;amp;#244; o^ lowercase o, circumflex accent&lt;br /&gt;&amp;amp;otilde; &amp;amp;#245; o~ lowercase o, tilde&lt;br /&gt;&amp;amp;ouml; &amp;amp;#246; o" lowercase o, umlaut&lt;br /&gt;&amp;amp;divide; &amp;amp;#247; ÷ division sign&lt;br /&gt;&amp;amp;oslash; &amp;amp;#248; ? lowercase o, slash&lt;br /&gt;&amp;amp;ugrave; &amp;amp;#249; u` lowercase u, grave accent&lt;br /&gt;&amp;amp;uacute; &amp;amp;#250; u' lowercase u, acute accent&lt;br /&gt;&amp;amp;ucirc; &amp;amp;#251; u^ lowercase u, circumflex accent&lt;br /&gt;&amp;amp;uuml; &amp;amp;#252; u" lowercase u, umlaut&lt;br /&gt;&amp;amp;yacute; &amp;amp;#253; y' lowercase y, acute accent&lt;br /&gt;&amp;amp;thorn; &amp;amp;#254; ? lowercase thorn, Icelandic&lt;br /&gt;&amp;amp;yuml; &amp;amp;#255; y" lowercase y, umlaut&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116601020487270608?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/html_13.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116546008104394800</guid><pubDate>Thu, 07 Dec 2006 02:54:00 +0000</pubDate><atom:updated>2006-12-07T11:11:35.350+08:00</atom:updated><title>A look at Apache modules</title><description>最近想要研究一個功能，some web server (maybe apache)，the client requests an image from servers if it did not exist, the server will redirect to another url to show this image. Also, it will save this image from the current web server on his own server, so it can direct/send this image to client when other client requested the same image next time. On the other hand, the server will check out this imager is newer if it has been exited on the server !!&lt;br /&gt;&lt;br /&gt;i want to use apache dynamic  load module, and write a module can do this work.&lt;br /&gt;&lt;br /&gt;找到一篇文章，http://www.regdeveloper.co.uk/2006/10/03/apache_modules/&lt;br /&gt;&lt;br /&gt;A look at Apache modules&lt;br /&gt;Now for some real Apache code&lt;br /&gt;By Nick Kew → More by this author&lt;br /&gt;Published Tuesday 3rd October 2006 21:03 GMT&lt;br /&gt;&lt;br /&gt;Column As I write this, I'm on the Eurostar train, just returning from O'Reilly's OSCon (Open Source Conference) in Brussels. Some fascinating insights there; and even my own talk generated some interesting discussion. Some of the delegates, including O'Reilly himself, are promoting opensource ideas going beyond software and into society more generally. I've touched on that in this very column before now, but a related argument that's new to me is that the open/closed debate in software could become largely sidelined, as the industry focuses on software as a service (such as Google's offerings) more than as a product.&lt;br /&gt;&lt;br /&gt;Anyway, I've been meaning for some time to give you an article on writing Apache modules. But first things first. If you're going to write modules, you'll need a proper Apache installation. A safe option is to download the latest release version (currently 2.2.3) from httpd.apache.org, and install it from that. For the adventurous, you could install the current development version from svn.apache.org. If you use a different package such as an rpm or deb, you'll probably need an "apache-dev" package as well as Apache itself.&lt;br /&gt;What is a module?&lt;br /&gt;&lt;br /&gt;As I'm sure I've said, Apache has a diverse developer and user profile, and we all have very different uses for it. This approach to serving a wide range of needs is based on a small core, together with a large number of modules. Most of what you get when you install Apache as a package, from apache.org or elsewhere, comprises the modules that perform Apache's standard functions. Even such a simple task as serving an "index.html" file involves various modules: for example, mod_dir to resolve the URL http://www.example.com/ to the file index.html, and mod_mime to determine its MIME type as "text/html" so the browser knows how to render it.&lt;br /&gt;&lt;br /&gt;Just as Apache's standard functions are driven by modules, so we can write new modules to change its behaviour, or introduce entirely new capabilities. Some examples of the kind of things we can do with modules include:&lt;br /&gt;&lt;br /&gt;  * A content generator module takes an HTTP request and generates a response, in the manner of, for example, a CGI or PHP script. The default handler simply serves up a static file from local disc, while others may implement a service such as XML-RPC, do custom processing, or (like mod_cgi) delegate the work to an external script.&lt;br /&gt;  * A mapper module runs before content generation, and determines how a request will be processed. For example, mod_negotiation selects amongst different versions of a document (e.g. different languages) according to browser preferences, while mod_alias and mod_rewrite perform rule-based URL manipulation.&lt;br /&gt;  * An authentication module ascertains the identity of a user. When used, it is usually accompanied by an authorization module, which determines whether the user is permitted the attempted operation.&lt;br /&gt;  * A filter module transforms incoming and/or outgoing data. Filters may be chained arbitrarily, and are the building blocks for sophisticated processing and aggregation applications. They range from simple content manipulation such as server side includes, through compression, to SSL encryption, and include many of the most exciting third-party applications.&lt;br /&gt;  * A service module may export an entirely new API and/or service for other modules. For example, mod_dbd manages SQL database connections, and mod_xmlns exports an API for namespace-based processing of XML.&lt;br /&gt;&lt;br /&gt;A HelloWorld Module&lt;br /&gt;&lt;br /&gt;Conceptually, the simplest type of module is the content generator or handler, whose role in Apache is directly equivalent to a CGI or PHP script. That is to say, it processes a request in whatever manner is required, and generates a response to return to the Client. It is not required to deal with the details of the HTTP protocol, though (as with a script) it may do that, or any number of other things. Usually it's good to keep the content generator simple, and use other types of module for different tasks.&lt;br /&gt;&lt;br /&gt;So in the spirit of simplicity, let's take a look at a minimal HelloWorld module. Note that, unlike a script, this doesn't live amongst our web documents, so we can't run it straight from the filesystem. We'll need to configure it using a directive such as SetHandler instead:&lt;br /&gt;&lt;br /&gt;LoadModule helloworld_module modules/mod_helloworld.so&lt;br /&gt;&lt;br /&gt;   SetHandler helloworld&lt;br /&gt;&lt;br /&gt;Here's a function to return a HelloWorld page to the client. The prototype is typical: it takes the request_rec (HTTP Request) object as a single argument, and returns an integer status code. The request_rec provides access to everything a handler might need (such as the variables available to a script) and also serves as an I/O descriptor, among other things:&lt;br /&gt;&lt;br /&gt;static int helloworld_handler(request_rec *r) {&lt;br /&gt;/* First, some housekeeping. */&lt;br /&gt;if (!r-&gt;handler || strcasecmp(r-&gt;handler, "helloworld") != 0) {&lt;br /&gt;/* r-&gt;handler wasn't "helloworld", so it's none of our business */&lt;br /&gt;return DECLINED;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;if (r-&gt;method_number != M_GET) {&lt;br /&gt;/* We only accept GET and HEAD requests.&lt;br /&gt;* They are identical for the purposes of a content generator&lt;br /&gt;* Returning an HTTP error code causes Apache to return an&lt;br /&gt;* error page (ErrorDocument) to the client.&lt;br /&gt;*/&lt;br /&gt;return HTTP_METHOD_NOT_ALLOWED;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/* OK, we're happy with this request, so we'll return the response. */&lt;br /&gt;&lt;br /&gt;ap_set_content_type(r, "text/html");&lt;br /&gt;ap_rputs(" .... etc", r);&lt;br /&gt;&lt;br /&gt;/* we return OK to indicate that we have successfully processed&lt;br /&gt;* the request.  No further processing is required.&lt;br /&gt;*/&lt;br /&gt;return OK;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;So, that's our handler function. Now we need to hook it in to Apache's processing, so it will be run when we get a request for /helloworld. We use a special function that runs at server startup to register our handler with Apache:&lt;br /&gt;&lt;br /&gt;static void helloworld_hooks(apr_pool_t *pool) {&lt;br /&gt;/* hook helloworld_handler in to Apache */&lt;br /&gt;ap_hook_handler(helloworld_handler, NULL, NULL, APR_HOOK_MIDDLE);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;This hooks function is itself part of the module object. For most modules, this is the only symbol exported and visible to other modules or the core:&lt;br /&gt;&lt;br /&gt;module AP_MODULE_DECLARE_DATA helloworld_module = {&lt;br /&gt;STANDARD20_MODULE_STUFF,&lt;br /&gt;NULL,&lt;br /&gt;NULL,&lt;br /&gt;NULL,&lt;br /&gt;NULL,&lt;br /&gt;NULL,&lt;br /&gt;helloworld_hooks&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;And that's all! We have a complete HelloWorld module. We can use apxs, a compiler-wrapper that is part of the Apache installation, to compile and (as root) install it:&lt;br /&gt;&lt;br /&gt;$ apxs -c mod_helloworld.c&lt;br /&gt;# apxs -ie mod_helloworld.la&lt;br /&gt;&lt;br /&gt;Well, as usual I'm over the 1000 words, so I'll bring this first look at modules to a close. For further information, stay tuned. If you're seriously interested, my book is now in production with the publisher, so for the first time you have a more than just the source code and a handful of ad-hoc materials to help upgrade your LAMP and application server skills!&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116546008104394800?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/look-at-apache-modules_07.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116545586129431495</guid><pubDate>Thu, 07 Dec 2006 01:29:00 +0000</pubDate><atom:updated>2006-12-07T09:44:21.336+08:00</atom:updated><title>How to Delete Members from Archives</title><description>&lt;h2&gt;&lt;a name="SEC32" href="http://www.apl.jhu.edu/Misc/Unix-info/tar/tar_toc.html#TOC32"&gt;&lt;/a&gt;How to Delete Members from Archives&lt;/h2&gt;&lt;br /&gt;tar  是在 Linux 上很常用的工具，如果搭配 gzip 那就更好用了！&lt;br /&gt;如果我們要從一個 tar 檔中，直接 刪除一個檔案，我們可以用 --delete 這一個參數。&lt;br /&gt;&lt;br /&gt;test.tar 中有三個檔案&lt;br /&gt;# tar --list -f test.tar&lt;br /&gt;test1.txt&lt;br /&gt;test2.txt&lt;br /&gt;test3.txt&lt;br /&gt;# tar --delete -f test.tar test1.txt&lt;br /&gt;# tar --list -f test.tar&lt;br /&gt;test2.txt&lt;br /&gt;test3.txt&lt;br /&gt;#&lt;br /&gt;如果你的 tar 檔中，檔案是有帶路徑，後面的檔案名稱也要全寫哦&lt;br /&gt;# tar --list -f test.tar&lt;br /&gt;backup/test1.txt&lt;br /&gt;backup/test2.txt&lt;br /&gt;backup/test3.txt&lt;br /&gt;# tar --delete -f test.tar backup/test1.txt  (這裡連 backup/ 目錄都要寫出來哦)&lt;br /&gt;# tar --list -f test.tar&lt;br /&gt;backup/test2.txt&lt;br /&gt;backup/test3.txt&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116545586129431495?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/how-to-delete-members-from-archives.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116502721839358631</guid><pubDate>Sat, 02 Dec 2006 01:59:00 +0000</pubDate><atom:updated>2006-12-02T10:40:18.753+08:00</atom:updated><title>ImageMagick use convert show chinese on images</title><description>ImageMagick 是個很好用的圖檔處理工具，其中的 convert 這個命令可以做出很多圖檔出來，例如可以在圖片中加入文字等功能！實在很好用，也可以產生一個隨機的圖片，可以做出網站上常用的驗證碼等類似功能！但是 convert 這一個工具有一個問題，它在接受中文部份，只接受 Unicode 編碼的中文，不支援直接送 big5 給它。而且你要可以秀出正確的中文還需要有中文字型，這時後的中文字型就不能是一般我們 windows 系統上的 big5 編碼的中文字型，因為你是用 Unicode 編碼送給它！&lt;br /&gt;&lt;div id="mb_0"&gt;&lt;br /&gt;所以要實現在圖片置入中文的話，第一要有 Unicode 編碼的中文字型，第二要把 big5 中文字轉成 unicode 編碼。&lt;br /&gt;&lt;br /&gt;我在兩個網站下載到 unicode 編碼的中文字型&lt;br /&gt;&lt;a href="http://www.info.gov.hk/digital21/chi/hkscs/download/ming_uni.ttf.gz" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.info.gov.hk/digital2&lt;wbr&gt;1/chi/hkscs/download/ming_uni&lt;wbr&gt;.ttf.gz &lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.study-area.org/apt/firefly-font/fireflysung-1.3.0.tar.gz" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.study-area.org/apt&lt;wbr&gt;/firefly-font/fireflysung-1.3&lt;wbr&gt;.0.tar.gz&lt;/a&gt;&lt;br /&gt;真是太感謝他們了！&lt;br /&gt;&lt;br /&gt;有了中文字型之後，接下來就是字型編碼的轉換了！&lt;br /&gt;perl 有提供一個工具 piconv 可以用來轉換 big5 to unicode 這實在是太棒了！萬事俱備了！&lt;br /&gt;底下的範例，就是一個會產生含有中文字的圖檔！ convert 還有很多驚人的功能，有興趣的人可以多加研究！&lt;br /&gt;&lt;br /&gt;convert -pointsize 72 -fill white -font fireflysung.ttf -size 500x200 xc:black -draw "text +20+100 '`piconv -f big5 -t utf8 -s '中國'`'" chinese.jpg&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.imagemagick.org/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.imagemagick.org/&lt;/a&gt;  ImageMagick 官網 &lt;br /&gt;&lt;a href="http://www.imagemagick.org/script/convert.php" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"&gt;http://www.imagemagick.org&lt;wbr&gt;/script/convert.php&lt;/a&gt;  convert 工具說明&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;written by 東海大野狼&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116502721839358631?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/imagemagick-use-convert-show-chinese.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>2</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-9440714.post-116498799990596187</guid><pubDate>Fri, 01 Dec 2006 15:45:00 +0000</pubDate><atom:updated>2006-12-13T21:38:26.846+08:00</atom:updated><title>ImageMagick Install for Linux</title><description>東海大野狼部落格&lt;br /&gt;&lt;br /&gt;因為需要用到一些圖檔的處理，所以安裝了  ImageMagick，然後再安裝 perl 的 PerlMagick&lt;br /&gt;在解開 ImageMagick 之後，裡頭有一個 README.txt 需要好好看一下！因為你如果要讓你的  ImageMagick 支援一些其它東東，就需要先安裝相關的套件，這樣才可以讓你的 ImageMagick 完整一點！&lt;br /&gt;&lt;br /&gt;底下就是我有安裝的一些東東！&lt;br /&gt;ImageMagick 的 configure 之後，會看到你目前系統上，ImageMagick 有找到而可以讓其支援的相關訊息，可以看一下是不是你所需要的，如果不夠就要再去安裝相關套件！進行 make 時，過程相當久，也會出現很多的 warning，但最後似乎也可以進行安裝，我的 server 因為沒有安裝 X-Window ，而有一些套件我認為用不到的也沒裝，所以應該是這樣造成的吧！不過最後裝完 PerlMagick 之後，要的功能都可以用，所以就沒有理那些訊息了！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; o ImageMagick requires the BZLIB library from&lt;br /&gt;       * &lt;a href="http://sources.redhat.com/bzip2/" target="_blank"&gt;http://sources.redhat.com /bzip2/&lt;/a&gt;&lt;br /&gt;       wget  &lt;a href="http://www.bzip.org/1.0.3/bzip2-1.0.3.tar.gz" target="_blank"&gt;http://www.bzip.org/1.0.3 /bzip2-1.0.3.tar.gz &lt;/a&gt;&lt;br /&gt;       * it will install bzip2 on system&lt;br /&gt;       make&lt;br /&gt;       make install&lt;br /&gt;       * build shared library libbz2.so.&lt;br /&gt;       make -f Makefile-libbz2_so&lt;br /&gt;       mv *.so.* /usr/lib&lt;br /&gt;&lt;br /&gt; o ImageMagick requires the FreeType software, version  2.0 or above, available as&lt;br /&gt;        &lt;a href="http://freetype.sourceforge.net/" target="_blank"&gt;http://freetype.sourceforge.net&lt;/a&gt;&lt;br /&gt;        wget &lt;a href="http://download.savannah.gnu.org/releases/freetype/freetype-2.2.1.tar.gz" target="_blank"&gt; http://download.savannah.gnu .org/releases/freetype/freetype -2.2.1.tar.gz &lt;/a&gt;&lt;br /&gt;         ./configure&lt;br /&gt;        make&lt;br /&gt;        make install&lt;br /&gt;        wget &lt;a href="http://download.savannah.gnu.org/releases/freetype/freetype-doc-2.2.1.tar.gz" target="_blank"&gt; http://download.savannah.gnu .org/releases/freetype/freetype -doc-2.2.1.tar.gz &lt;/a&gt;&lt;br /&gt;&lt;br /&gt; o ImageMagick requires Ghostscript software (version 8.10 recommended) available from&lt;br /&gt;       &lt;a href="http://www.cs.wisc.edu/%7Eghost/" target="_blank"&gt; http://www.cs.wisc.edu/~ghost/&lt;/a&gt;&lt;br /&gt;       wget &lt;a href="http://nchc.dl.sourceforge.net/sourceforge/ghostscript/ghostscript-8.54-gpl.tar.gz" target="_blank"&gt; http://nchc.dl.sourceforge.net /sourceforge/ghostscript /ghostscript-8.54-gpl.tar.gz&lt;/a&gt;&lt;br /&gt;       ./configure&lt;br /&gt;       make&lt;br /&gt;        make install&lt;br /&gt;&lt;br /&gt; o ImageMagick requires html2ps available from&lt;br /&gt;        &lt;a href="http://www.tdb.uu.se/%7Ejan/html2ps.html" target="_blank"&gt;  http://www.tdb.uu.se/~jan /html2ps.html&lt;/a&gt;&lt;br /&gt;        wget &lt;a href="http://user.it.uu.se/%7Ejan/html2ps-1.0b5.tar.gz" target="_blank"&gt;http://user.it.uu.se/~jan /html2ps-1.0b5.tar.gz &lt;/a&gt;&lt;br /&gt;        ./install&lt;br /&gt;&lt;br /&gt; o ImageMagick requires the Independent JPEG Group's software available via  anonymous FTP as&lt;br /&gt;       to read the JPEG v1 image format.&lt;br /&gt;       &lt;a target="_blank"&gt;ftp://ftp.uu.net/graphics/jpeg /jpegsrc.v6b.tar.gz &lt;/a&gt;&lt;br /&gt;       ./configure --enable-shared --enable-static&lt;br /&gt;       make&lt;br /&gt;       make test&lt;br /&gt;       make install&lt;br /&gt;&lt;br /&gt; o ImageMagick requires the JasPer Project's Jasper library version 1.701.0 available via http from&lt;br /&gt;        to read and write the JPEG-2000 format.&lt;br /&gt;        &lt;a href="http://www.ece.uvic.ca/%7Emdadams/jasper/" target="_blank"&gt;http://www.ece.uvic.ca/ ~mdadams/jasper/&lt;/a&gt;&lt;br /&gt;        wget &lt;a href="http://www.ece.uvic.ca/%7Emdadams/jasper/software/jasper-1.701.0.zip" target="_blank"&gt; http://www.ece.uvic.ca/ ~mdadams/jasper/software /jasper-1.701.0.zip &lt;/a&gt;&lt;br /&gt;        ./configure&lt;br /&gt;        make&lt;br /&gt;        make install&lt;br /&gt;&lt;br /&gt; o ImageMagick requires the PNG library, version 1.0 or above, from&lt;br /&gt;        to read the PNG image format.&lt;br /&gt;        &lt;a href="http://www.libpng.org/pub/png/pngcode.html" target="_blank"&gt;  http://www.libpng.org/pub/png /pngcode.html&lt;/a&gt;&lt;br /&gt;        wget &lt;a href="http://nchc.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.14.tar.gz" target="_blank"&gt; http://nchc.dl.sourceforge.net /sourceforge/libpng/libpng-1.2 .14.tar.gz &lt;/a&gt;&lt;br /&gt;         ./configure&lt;br /&gt;        make check&lt;br /&gt;        make install&lt;br /&gt;&lt;br /&gt;        zlib&lt;br /&gt;        wget &lt;a href="http://www.zlib.net/zlib-1.2.3.tar.gz" target="_blank"&gt; http://www.zlib.net/zlib-1.2.3 .tar.gz&lt;/a&gt;&lt;br /&gt;        ./configure&lt;br /&gt;        make test&lt;br /&gt;        make install&lt;br /&gt;&lt;br /&gt; o ImageMagick requires Sam Leffler's TIFF software available via anonymous&lt;br /&gt;         to read the TIFF image format. It in turn optionally requires the JPEG and  ZLIB libraries.&lt;br /&gt;        &lt;a href="http://www.remotesensing.org/libtiff/" target="_blank"&gt;http://www.remotesensing.org /libtiff/&lt;/a&gt;&lt;br /&gt;        wget &lt;a target="_blank"&gt; ftp://ftp.remotesensing.org /pub/libtiff/tiff-3.8.2.tar.gz &lt;/a&gt;&lt;br /&gt;        ./configure&lt;br /&gt;        make install&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Download ImageMagick sources and install&lt;br /&gt;        wget &lt;a target="_blank"&gt;ftp://ftp.kddlabs.co.jp /graphics/ImageMagick/ImageMagi ck-6.3.0-7.tar.gz &lt;/a&gt;&lt;br /&gt;        ./configure&lt;br /&gt;         make&lt;br /&gt;         make install&lt;br /&gt;&lt;br /&gt;Download PerlMagick from cpan and install&lt;br /&gt;        wget &lt;a href="http://search.cpan.org/CPAN/authors/id/J/JC/JCRISTY/PerlMagick-6.29.tar.gz" target="_blank"&gt; http://search.cpan.org/CPAN /authors/id/J/JC/JCRISTY /PerlMagick-6.29.tar.gz&lt;/a&gt;&lt;br /&gt;        perl Makefile.PL&lt;br /&gt;        make&lt;br /&gt;        make install&lt;div class="blogger-post-footer"&gt;&lt;script type="text/javascript"&gt;&lt;!--
google_ad_client = "pub-0967045492398042";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
//2007-09-12: 網站技術
google_ad_channel = "4528373208";
//--&gt;
&lt;/script&gt;
&lt;script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;
&lt;/script&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9440714-116498799990596187?l=thucop.ysdc.biz' alt='' /&gt;&lt;/div&gt;</description><link>http://thucop.ysdc.biz/2006/12/imagemagick-install-for-linux.html</link><author>noreply@blogger.com (東海大野狼)</author><thr:total>1</thr:total></item></channel></rss>
