2015年10月16日 星期五

不需js的漸變效果(可套用到滿版div)

雖然沒有箭頭或任何點擊來作用換圖,但很簡單就能讓手機電腦都能使用的輪播,而且配合做好的滿版div可以輕鬆實現滿版輪播效果!

資料來源:http://blog.shihshih.com/pure-css-slider/


Step 1:先將圖片就定位

HTML Markup


<divdiv class="slider_container">
    <divdiv>
        <divimg src="images/image1.png" alt="pure css3 slider" />
        <divspan class="info">Image Description
    <div/div>
    <divdiv>
        <divimg src="images/image2.png" alt="pure css3 slider" />
        <divspan class="info">Image Description
    <div/div>
    <divdiv>
        <divimg src="images/image3.png" alt="pure css3 slider" />
        <divspan class="info">Image Description
    <div/div>
    <divdiv>
        <divimg src="images/image4.png" alt="pure css3 slider" />
        <divspan class="info">Image Description
    <div/div>
    <divdiv>
        <divimg src="images/image5.png" alt="pure css3 slider" />
        <divspan class="info">Image Description
    <div/div>
<div/div>

CSS Style


.slider_container {
    margin: 30px auto;
    width: 400px;
    height: 280px;
    position: relative;
    border: 20px solid;    
    border-color: #fff;
    border-bottom-width: 100px;
    background-color: #f5f5f5;
    box-shadow: #666 0 0 5px;
}

.slider_container div {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
}

Step 2:確認輪播效果的時間軸

先決定過場時間(前後兩張圖片重疊的時間)、每張圖片播放的時間、完成一個週期需要多少時間。
pure css3 slider
由上圖我們知道我們的輪播器共有5張圖片,過場時間為1秒、每張圖片播放4秒、一個完整的週期是25秒。因為@keyframe的時間是以百分比來表示,因為我們要先把秒換成百分比。
100% / 25秒 = 4% ( 每秒)
4% = 1秒

CSS3 Keyframes Animation

設定動畫週期。

.slider_container div {
    -webkit-animation: round 25s linear infinite;
            animation: round 25s linear infinite;
}

@-webkit-keyframes round {
    4% {
        opacity: 1;
        filter: alpha(opacity=100);
        /* 0 - 1秒 淡入*/
    }
    20% {
        opacity: 1;
        filter: alpha(opacity=100);
        /* 1- 5秒靜止*/
    }
    24% {
        opacity: 0;
        filter: alpha(opacity=0);
        /* 5-6秒淡出*/
    }
}
@keyframes round {
    4% {
        opacity: 1;
        filter: alpha(opacity=100);
        /* 0 - 1秒 淡入*/
    }
    20% {
        opacity: 1;
        filter: alpha(opacity=100);
        /* 1- 5秒靜止*/
    }
    24% {
        opacity: 0;
        filter: alpha(opacity=0);
        /* 5-6秒淡出*/
    }
}
每張圖片進場時間相隔5秒

.slider_container div:nth-child(5) {
    -webkit-animation-delay: 0s;
            animation-delay: 0s;
}

.slider_container div:nth-child(4) {
    -webkit-animation-delay: 5s;
            animation-delay: 5s;
}

.slider_container div:nth-child(3) {
    -webkit-animation-delay: 10s;
            animation-delay: 10s;
}

.slider_container div:nth-child(2) {
    -webkit-animation-delay: 15s;
            animation-delay: 15s;
}

.slider_container div:nth-child(1) {
    -webkit-animation-delay: 20s;
            animation-delay: 20s;
}
CSS transition
當滑鼠移到圖片上時、底下出現 “Image Description" 字樣且輪播動畫暫停。當滑鼠離開時、"Image Description" 字樣且輪播動畫繼續播放。

.slider_container span {    
    color: #000;
    background: #fff;
    position: absolute;
    left: 0%;
    top: 280px;
    width: 400px;
    height: 100px;
    font-size: 30px;
    text-align: center;
    line-height: 100px;
    -webkit-transform:scaleY(0);
        -ms-transform:scaleY(0);
            transform:scaleY(0);
    -webkit-transition: all 0.5s ease-in-out;
            transition: all 0.5s ease-in-out;
}

.slider_container:hover span {
    width: 100%;
    -webkit-transform:scaleY(1);
        -ms-transform:scaleY(1);
            transform:scaleY(1);
}
Pause And Restart
當滑鼠移到圖片上時,暫停播放動畫。

.slider_container:hover div {
    -webkit-animation-play-state: paused;
            animation-play-state: paused;
}

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才有