2015年7月19日 星期日

網頁自動切換手機版語法(js)

網頁判斷手機開啟時切換到手機版js語法

參考來源

現在很多網站都要有手機版的網頁了,但是以前的網頁要怎麼辦呢?? ..
因為目前有分二種形態的網站~~
有一種是同一頁網頁做縮放的動作就會因寬度去改變網站的類型…
有一種是電腦版網頁和手機版網頁是分開來的,但目前比較多是分開來的…
因為以前做的電腦版網站還是會留下來,然後在另外做一個手機版的網站…
今天就是要做一個手機版網站,然後在之前的電腦版網站加入可以判斷的語法,才能轉到手機版的網頁哦…
非常的簡單,但還是要懂基本的語法哦…
<script type="text/javascript">
function checkserAgent(){
var userAgentInfo=navigator.userAgent;
var userAgentKeywords=new Array(“Android", “iPhone" ,"SymbianOS", “Windows Phone", “iPad", “iPod", “MQQBrowser");
var flag=false;
if(userAgentInfo.indexOf(“Windows NT")==-1){
flag=true;
}
return flag;
}
if(checkserAgent()){
document.location.href="http://cynet.tw/mobile/";
}
</script>
複製以上的語法,可以直接貼在"<head>  </head>"之間,然後把程式裡的 “http://cynet.tw/mobile/" 這一段網址,改成要轉去的頁面哦…
經過測試後,HTC、三星、IPhone 的手機瀏覽網站都可以順利的轉換網址成功哦…

2015年3月19日 星期四

JS列印語法

各種列印按鈕參考,單純列印時原則上會用第一種,第二種在預覽頁應該再做個列印按鈕較為洽當。

參考網站


ABOUT:想做一各A網頁,裡頭有一各列印按鈕,當我按下後,能列印出B網頁的內容
利用框架(一般框架or內置框架都可以,但須指派id)
下面為範例:
假設有個內置框架,HTML為:
<iframe name="PrintFrame"  id="PrintData"  src="aaa.htm">

而A網頁,給他一個暗鈕,當使用者按下按鈕之後,就會跳出列印對話框,但列印出來的內容是B網頁的資料. . .
<input type=button onClick="PrintData.focus(); print();" >

ABOUT:用 Java Script 列印網頁中指定的圖層
因為不希望把網頁中所有的東西都列印,尤其是有頁框 or MasterPage的時候,用以下語法可指定僅列印網頁中某一圖層內容(<DIV>)
分為三個部份:

一、網頁 print.aspx,加入一個HTML產生的button,並在onclick指定欲執行的JS片段
<input id="btnPrint" type="button" value="列印成績" onclick="printScreen(printlist)"/>
接著新增一個圖層標籤,在此命名為 printlist
<div id="printlist">
            <table style="width: 750px">
            <tr>
                <td>
                    欄位一
                </td>
                <td style="width: 150px">
                    欄位二</td>
            </tr>
            <tr>
                <td colspan="2">
                    可以把GirdView放在這裡來列印
                </td>
            </tr>
            <tr>
                <td colspan="2">
                     </td>
            </tr>
            <tr>
                <td colspan="2">
                    表尾</td>
            </tr>
            </table>
    
</div>
二、網頁程式 print.aspx.cs,在Page_Load時載入JS檔
protected void Page_Load(object sender, EventArgs e) { Page.ClientScript.RegisterClientScriptInclude("myPrint", "Print.js"); } 三、JS檔內容
function printScreen(printlist)
{
var value = printlist.innerHTML;
var printPage = window.open("","printPage","");
printPage.document.open();
printPage.document.write("<HTML><head></head><BODY onload='window.print();window.close()'>");
printPage.document.write("<PRE>");
printPage.document.write(value);
printPage.document.write("</PRE>");
printPage.document.close("</BODY></HTML>");
}

ABOUT:自動列印與分頁列印
設計網頁的時候, 通常考慮到的是 '讓瀏覽者賞心悅目' 的排版問題。
如果瀏覽者打算列印你的網頁, 或是你的網頁利用資料庫處理了一些資料,
準備製成報表, 這時便會遇到分頁的問題。

怎麼樣讓網頁於列印時自動分成適當的頁數呢?
其實有個簡單的指令, 馬上能讓你達成心願。
這個指令是:

<P style='page-break-after:always'></P>
雖然這是 HTML 的 css 而非 Javascript 的指令, 不過配合網頁進入時
所啟動的 Javascript 的 window.print() 印表機交談視窗指令,
更能讓網頁的列印方便許多!

列印 Html 網頁時的強制換頁方式
透過 CSS 的 Pagebreak 來處理列印 Html 強制換頁。
在標籤後換頁 { page-break-after: always }
在標籤前換頁 { page-break-before: always }
 於文件加入語法 :
<P style="page-break-after:always">&nbsp;</P>



ABOUT:Java Script呼叫IE列印與預覽列印(區塊列印集區塊預覽列印)
整頁列印:html部分:
<INPUT TYPE="button" value="整頁列印" onclick="print()">
Javascript部分:
N/A
部分列印(只列印div包起來的網頁):
html部分:
<div id="block">
<P><img id=”ruten” name=”ruten” SRC=”http://www.ruten.com.tw/imgs/2008/logo.gif”></P>
</div>
<input type=”button” value=”部分列印” onclick=”printScreen(block)”>
Javascript部分:
//列印div包起來的部分並且列印完畢後自動關閉列印網頁
function printScreen(block){
var value = block.innerHTML;
var printPage = window.open(”",”printPage”,”");
printPage.document.open();
printPage.document.write(”<HTML><head></head><BODY onload=’window.print();window.close()’>”);
printPage.document.write(”<PRE>”);
printPage.document.write(value);
printPage.document.write(”</PRE>”);
printPage.document.close(”</BODY></HTML>”);
}
整頁預覽列印:
html部分:
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height=0 id=wb name=wb width=0></OBJECT>
<INPUT TYPE=”button” value=”整頁預覽” onclick=”javascript:wb.execwb(7,1)”>
Javascript部分:
N/A
部分預覽列印(只預覽div包起來的部份):
html部分:
<div id="block">
<P><img id=”ruten” name=”ruten” SRC=”http://www.ruten.com.tw/imgs/2008/logo.gif”></P></div>
<input type=”button” value=”區塊預覽” onclick=”previewScreen(block)”>
Javascript部分:
//預覽div包起來的部分並且列印完畢後自動關閉列印網頁
function previewScreen(block){
var value = block.innerHTML;
var printPage = window.open(”",”printPage”,”");
printPage.document.open();
printPage.document.write(”<OBJECT classid=’CLSID:8856F961-340A-11D0-A96B-00C04FD705A2′ height=0 id=wc name=wc width=0></OBJECT>”);
printPage.document.write(”<HTML><head></head><BODY onload=’javascript:wc.execwb(7,1);window.close()’>”);
printPage.document.write(”<PRE>”);
printPage.document.write(value);
printPage.document.write(”</PRE>”);
printPage.document.close(”</BODY></HTML>”);
}

2015年3月2日 星期一

IIS6.0下載Office2007檔案(如:docx)問題解決

網站上傳好的docx檔案不能正常下載..爬了一下google發現是iis6的問題..

解決方法如下

資料原網址

但從client端要下載回來,卻發生了錯誤的現象....

最後到網路找了一下資料.才知道在IIS6.0要下載office 2007格式的檔案

要先到IIS管理員→網站→右鍵[內容]→HTTP標頭→MIME類型→新增→

副檔名:.docx
MIME類型:application/vnd.openxmlformats-officedocument.wordprocessingml.document

這樣就可以下載.docx檔了...

更多Office2007文件的MIME格式如下:

.docm,application/vnd.ms-word.document.macroEnabled.12
.docx,application/vnd.openxmlformats-officedocument.wordprocessingml.document
.dotm,application/vnd.ms-word.template.macroEnabled.12
.dotx,application/vnd.openxmlformats-officedocument.wordprocessingml.template
.potm,application/vnd.ms-powerpoint.template.macroEnabled.12
.potx,application/vnd.openxmlformats-officedocument.presentationml.template
.ppam,application/vnd.ms-powerpoint.addin.macroEnabled.12
.ppsm,application/vnd.ms-powerpoint.slideshow.macroEnabled.12
.ppsx,application/vnd.openxmlformats-officedocument.presentationml.slideshow
.pptm,application/vnd.ms-powerpoint.presentation.macroEnabled.12
.pptx,application/vnd.openxmlformats-officedocument.presentationml.presentation
.xlam,application/vnd.ms-excel.addin.macroEnabled.12
.xlsb,application/vnd.ms-excel.sheet.binary.macroEnabled.12
.xlsm,application/vnd.ms-excel.sheet.macroEnabled.12
.xlsx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.xltm,application/vnd.ms-excel.template.macroEnabled.12
.xltx,application/vnd.openxmlformats-officedocument.spreadsheetml.template

2014年3月9日 星期日

取月份最後一天

找玩資料發現用不到..XD" 記下來當memo

轉路自十一的.net 部落


'做法都是用隔月的第一天減一天

'VB

Private Sub Command1_Click()
    Dim d As Date
        d = "2006/05/03"
        MsgBox (DateAdd("M", 1, Format(d, "YYYY/MM") & "/01") - 1)
End Sub
'VB.NET

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim d As Date
        d = "2006/05/03"
        MsgBox(Date.Parse(d.AddMonths(1).ToString("yyyy/MM") & "/01").AddDays(-1))

End Sub





'SQL

在SQL 有LASTDATE() 可以用

2012年12月4日 星期二

VB 字串轉時間格式


將字串轉為時間格式的三種方法

1.
Dim dt As DateTime
DateTime.TryParse("2003/8/15 上午 03:03:00", dt)

2.
Dim dt As DateTime
dt = DateTime.Parse("2003/8/15 上午 03:03:00")

3.
Dim dt As DateTime
dt = Convert.ToDateTime("2003/8/15 上午 03:03:00")

速度也是由1到3~~~1.最快但是2005才有

2012年11月12日 星期一

vb.程式間隔一段時間執行一次

剛好看到...雖然不符合要用的需求但或許之後用的到..先記錄下來



Private Sub Form_Load()
Timer1.Interval = 1000'把timer1設置成每隔一秒种觸發一次timer事件
End Sub

Private Sub Timer1_Timer()
Static a As Integer, b As Integer'全局變量
a = 1
If a = 60 Then b = 1:a=0'如果a=60了,就證明已經過了一分鐘了。那麼b再加上+1,如果b=5那麼就已經過了5分鐘了。
If b = 5 Then
'這後面寫你想執行的代碼
end if
End Sub

2012年11月9日 星期五

asp網頁編碼big5->utf8處理辦法


處理很久搞不定的big5 透過post將資料傳到utf-8的頁面會出現中文亂碼問題...
總算找到個解決方法..記錄起來
轉錄自:Itano Tomomi

asp網頁採用的編碼(encoding)是用系統預設的語系,在windows 2003底下是big5。那該如何將big5轉成utf8呢?這很簡單(不是團結的故事),使用Session.CodePage跟Server.UrlEncode()就可以了。
sourceURL = "http://itanotomomi.akb48/板野友美.htm"
dim i,utf8URL,tmp,encodingStr

for i=1 to Len(sourceUrl)
  tmp = mid(sourceUrl, i, 1)
  if asc(tmp) < 0 or asc(tmp) > 128 then  '將ascii碼在1~128以外的字元當成中文編成utf8
    Session.CodePage="65001" '先將網頁設成utf8
    encodingStr = Server.UrlEncode(tmp) '將中文編成utf8
    Session.CodePage="950" '再將網頁設為Big5
    utf8URL = utf8URL & encodingStr
  else
    utf8URL = utf8URL & tmp
  end if
next
為什麼要這樣做呢?因為asp使用Server.UrlEncode()進行編碼是採用系統預設的語系,若不更改網頁的語系為utf8,直接使用Server.UrlEncode()的話,會編成big5。而且千萬記得,編成utf8後,要再將Session.CodePage指定回big5,不然以big5為主的asp網站會整個亂掉。
不過若到上面為止,就想直接將encodingStr用response.redirect送出的話,會發現還是找不到網頁。那是因為response.redirect在導向的過程會採用系統預設的語系再編碼過一次...orz...
我目前解決的方式是不用response.redirect,改使用javascript的window.open()。不過缺點是會被瀏覽器擋住。
response.write "<script type='text/javascript'>window.open('" & utf8URL & "');</script>"
以上是純ASP的解決方法,接著介紹透過ASP.NET的解法。
首先是ASP端,將url編碼丟給ASP.NET。這邊採用預設編成big5就可以了,反正主要處理在ASP.NET端。 
sourceURL = "http://itanotomomi.akb48/板野友美.htm"
Response.Redirect "http://itanotomomi.akb48/passUTF8.aspx?q=" & Server.UrlEncode(sourceUrl)
接著在passUTF8.aspx.cs的Page_Load(若使用VB則是passUTF8.aspx.vb)中撰寫下面的語法。
string sourceURL = Request.Url.Query;
sourceURL = HttpUtility.UrlDecode(sourceURL, Encoding.GetEncoding("big5")); //將asp用big5傳來的url decode
sourceURL = sourceURL.Replace("?q=", "");
Response.Redirect(sourceURL);
因為ASP.NET使用utf8,所以將asp傳來的url編成utf8後就可以直接使用Response.Redirect()丟出去了。