<![CDATA[畅想博客-CxBlog - WEB技术]> http://www.cxblog.net/ zh-cn PBlog2 v2.4 畅想博客-CxBlog http://www.cxblog.net/images/logos.gif http://www.cxblog.net/ 畅想博客-CxBlog http://www.cxblog.net/default.asp?id=362 <![CDATA[Asp #include包含变量变通方法]> lyjier@163.com(lyjier) Wed,08 Sep 2010 06:35:53 +0800 http://www.cxblog.net/default.asp?id=362 Function getFileContents(strIncludeFile) '函数:读取包含文件内容
Dim objFSO,objText,strPage
Set objFSO = Server.CreateObject("Scripting.FileSystemObject") '调用FSO对象
Set objText = objFSO.OpenTextFile(Server.MapPath(strIncludeFile))
getFileContents = objText.ReadAll
objText.Close
Set objText = Nothing
Set objFSO = Nothing
End Function

dim type_id
type_id=request.querystring("type_id") '2种方式:request.form ,request.querystring
response.write getFileContents("leftabout"&type_id&".asp")
%>]>
http://www.cxblog.net/default.asp?id=360 <![CDATA[网页向左向右向上向下不间断滚动代码]> lyjier@163.com(ier00) Mon,14 Sep 2009 12:38:42 +0800 http://www.cxblog.net/default.asp?id=360
<div id=demo style=overflow:hidden;height:100;width:90;

background:#214984;color:#ffffff>

<div id=demo1>

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

</div>

<div id=demo2></div>

</div>

   <script>

   var speed=30

   demo2.innerHTML=demo1.innerHTML //克隆demo1为demo2

   function Marquee(){

//当滚动至demo1与demo2交界时

if(demo2.offsetTop-demo.scrollTop<=0)  

demo.scrollTop-=demo1.offsetHeight //demo跳到最顶端

else{

demo.scrollTop++

   }

   }

   var MyMar=setInterval(Marquee,speed)//设置定时器

//鼠标移上时清除定时器达到滚动停止的目的

   demo.onmouseover=function() {clearInterval(MyMar)}

//鼠标移开时重设定时器

   demo.onmouseout=function(){MyMar=setInterval(Marquee,speed)}

</script>


向下的-----------------------

<div id=demo style=overflow:hidden;height:100;width:90;

background:#214984;color:#ffffff>

<div id=demo1>

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

<img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif">

</div>

<div id=demo2></div>

</div>

    <script>

    var speed=30

    demo2.innerHTML=demo1.innerHTML

    demo.scrollTop=demo.scrollHeight

    function Marquee(){

    if(demo1.offsetTop-demo.scrollTop>=0)

    demo.scrollTop+=demo2.offsetHeight

    else{

    demo.scrollTop--

    }

    }

    var MyMar=setInterval(Marquee,speed)

    demo.onmouseover=function() {clearInterval(MyMar)}

    demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}

  </script>


向右的--------------------

<div id="demo" style="overflow:hidden;width:670px;color:#ffffff;">

      <table cellpadding="0" cellspacing="0" border="0">

        <tr><td id="demo1" valign="top" align="center">

          <table cellpadding="2" cellspacing="0" border="0">

            <tr align="center">

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif" ></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif" ></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif" ></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif" ></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif" ></td>

            </tr>

          </table>

        </td>

        <td id="demo2" valign="top"></td>

        </tr>

      </table>

    </div>

  <script>

  var speed=1//速度数值越大速度越慢

  demo2.innerHTML=demo1.innerHTML

  function Marquee(){

  if(demo.scrollLeft<=0)

  demo.scrollLeft+=demo2.offsetWidth

  else{

  demo.scrollLeft--

  }

  }

  var MyMar=setInterval(Marquee,speed)

  demo.onmouseover=function() {clearInterval(MyMar)}

  demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}

  </script>

向左的-------------------------------------

<div id="demo" style="overflow:hidden;width:670px;color:#ffffff;">

      <table cellpadding="0" cellspacing="0" border="0">

        <tr><td id="demo1" valign="top" align="center">

          <table cellpadding="2" cellspacing="0" border="0">

            <tr align="center">

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif"></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif"></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif"></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif"></td>

              <td><img src=&"http://www.baidu.com/img/logo.gif" target="_blank">http://www.baidu.com/img/logo.gif"></td>

            </tr>

          </table>

        </td>

        <td id="demo2" valign="top"></td>

        </tr>

      </table>

    </div>

  <script>

  var speed=1//速度数值越大速度越慢

  demo2.innerHTML=demo1.innerHTML

  function Marquee(){

  if(demo.scrollLeft<=0)

  demo.scrollLeft+=demo2.offsetWidth

  else{

  demo.scrollLeft--

  }

  }

  var MyMar=setInterval(Marquee,speed)

  demo.onmouseover=function() {clearInterval(MyMar)}

  demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}

  </script>
]>
http://www.cxblog.net/default.asp?id=357 <![CDATA[又一种自动适应IFRAME高度的代码]> lyjier@163.com(lyjier) Tue,02 Jun 2009 14:09:08 +0800 http://www.cxblog.net/default.asp?id=357
function f_frameStyleResize(targObj){

var targWin = targObj.parent.document.all[targObj.name];

if(targWin != null) {

var HeightValue = targObj.document.body.scrollHeight

if(HeightValue < 600){HeightValue = 600} //不小于600

targWin.style.pixelHeight = HeightValue;

}

}

function f_iframeResize(){

bLoadComplete = true; f_frameStyleResize(self);

}

var bLoadComplete = false;

window.onload = f_iframeResize;

</SCRIPT>

注意:iframe必须要有name属性,否则无效。]>
http://www.cxblog.net/default.asp?id=356 <![CDATA[兼容多种浏览器的英文日历]> lyjier@163.com(lyjier) Tue,02 Jun 2009 14:03:21 +0800 http://www.cxblog.net/default.asp?id=356 <head>
      <SCRIPT language="javascript">
      <!--
var fixedX = -1   // x position (-1 if to appear below control)
var fixedY = -1   // y position (-1 if to appear below control)
var startAt = 1   // 0 - sunday ; 1 - monday
var showWeekNumber = 0 // 0 - don't show; 1 - show
var showToday = 0  // 0 - don't show; 1 - show
//var imgDir = "pic/calendar/"   // directory for images ... e.g. var imgDir="/img/"
var imgDir = "../../Inc/image/"
var gotoString = "Go To Current Month"
var todayString = "Today is"
var weekString = "Wk"
var scrollLeftMessage = "Click to scroll to previous month. Hold mouse button to scroll automatically."
var scrollRightMessage = "Click to scroll to next month. Hold mouse button to scroll automatically."
var selectMonthMessage = "Click to select a month."
var selectYearMessage = "Click to select a year."
var selectDateMessage = "Select [date] as date." // do not replace [date], it will be replaced by date.
var crossobj, crossMonthObj, crossYearObj, monthSelected, yearSelected, dateSelected, omonthSelected, oyearSelected, odateSelected, monthConstructed, yearConstructed, intervalID1, intervalID2, timeoutID1, timeoutID2, ctlToPlaceValue, ctlNow, dateFormat, nStartingYear, nStartingMonth
var bPageLoaded=false

var ie = false;
var dom=document.getElementById
var ns4=document.layers
var today = new Date()
var dateNow  = today.getDate()
var monthNow = today.getMonth()
var yearNow  = today.getYear()
var imgsrc = new Array("drop1.gif","drop2.gif","left1.gif","left2.gif","right1.gif","right2.gif")
var img = new Array()
var bShow = false;

if((navigator.userAgent.toLowerCase().indexOf("opera") == -1) && (navigator.userAgent.toLowerCase().indexOf("msie") != -1))
{
    ie = true;
}
    /* hides <select> and <applet> objects (for IE only) */
    function hideElement( elmID, overDiv )
    {
      if( ie )
      {
        for( i = 0; i < document.all.tags( elmID ).length; i++ )
        {
          obj = document.all.tags( elmID )[i];
          if( !obj || !obj.offsetParent )
          {
            continue;
          }
      
          // Find the element's offsetTop and offsetLeft relative to the BODY tag.
          objLeft   = obj.offsetLeft;
          objTop    = obj.offsetTop;
          objParent = obj.offsetParent;
          
          while( objParent.tagName.toUpperCase() != "BODY" )
          {
            objLeft  += objParent.offsetLeft;
            objTop   += objParent.offsetTop;
            objParent = objParent.offsetParent;
          }
      
          objHeight = obj.offsetHeight;
          objWidth = obj.offsetWidth;
      
          if(( overDiv.offsetLeft + overDiv.offsetWidth ) <= objLeft );
          else if(( overDiv.offsetTop + overDiv.offsetHeight ) <= objTop );
          else if( overDiv.offsetTop >= ( objTop + objHeight ));
          else if( overDiv.offsetLeft >= ( objLeft + objWidth ));
          else
          {
            obj.style.visibility = "hidden";
          }
        }
      }
    }
    
    /*
    * unhides <select> and <applet> objects (for IE only)
    */
    function showElement( elmID )
    {
      if( ie )
      {
        for( i = 0; i < document.all.tags( elmID ).length; i++ )
        {
          obj = document.all.tags( elmID )[i];
          
          if( !obj || !obj.offsetParent )
          {
            continue;
          }
        
          obj.style.visibility = "";
        }
      }
    }
function HolidayRec (d, m, y, desc)
{
  this.d = d
  this.m = m
  this.y = y
  this.desc = desc
}
var HolidaysCounter = 0
var Holidays = new Array()
function addHoliday (d, m, y, desc)
{
  Holidays[HolidaysCounter++] = new HolidayRec ( d, m, y, desc )
}
if (dom)
{
  for (i=0;i<imgsrc.length;i++)
  {
   img[i] = new Image
   img[i].src = imgDir + imgsrc[i]
  }
  document.write ("<div onclick='bShow=true' id='calendar' style='z-index:+999;position:absolute;visibility:hidden;'><table width="+((showWeekNumber==1)?250:220)+" style='font-family:arial;font-size:11px;border-width:1;border-style:solid;border-color:#a0a0a0;font-family:arial; font-size:11px}' bgcolor='#ffffff'><tr bgcolor='#0000aa'><td><table width='"+((showWeekNumber==1)?248:218)+"'><tr><td style='padding:2px;font-family:arial; font-size:11px;'><font color='#ffffff'><B><span id='caption'></span></B></font></td><td align=right><a href='javascript:hideCalendar()'><IMG SRC='"+imgDir+"close.gif' WIDTH='15' HEIGHT='13' BORDER='0' ALT='Close the Calendar'></a></td></tr></table></td></tr><tr><td style='padding:5px' bgcolor=#ffffff><span id='content'></span></td></tr>")
  
  if (showToday==1)
  {
   document.write ("<tr bgcolor=#f0f0f0><td style='padding:5px' align=center><span id='lblToday'></span></td></tr>")
  }
  
  document.write ("</table></div><div id='selectMonth' style='z-index:+999;position:absolute;visibility:hidden;'></div><div id='selectYear' style='z-index:+999;position:absolute;visibility:hidden;'></div>");
}
var monthName = new Array("01","02","03","04","05","06","07","08","09","10","11","12")
var monthName2 = new Array("01","02","03","04","05","06","07","08","09","10","11","12")
if (startAt==0)
{
  dayName = new Array ("Sun","Mon","Tue","Wed","Thu","Fri","Sat")
}
else
{
  dayName = new Array ("Mon","Tue","Wed","Thu","Fri","Sat","Sun")
}
var styleAnchor="text-decoration:none;color:black;"
var styleLightBorder="border-style:solid;border-width:1px;border-color:#a0a0a0;"
function swapImage(srcImg, destImg)
{
  if (ie)
  {
   document.getElementById(srcImg).setAttribute("src",imgDir + destImg)
  }
}
function init()
{
  if (!ns4)
  {
   if (!ie)
   {
    yearNow += 1900
   }
   crossobj=(dom)?document.getElementById("calendar").style : ie? document.all.calendar : document.calendar
   hideCalendar()
   crossMonthObj=(dom)?document.getElementById("selectMonth").style : ie? document.all.selectMonth : document.selectMonth
   crossYearObj=(dom)?document.getElementById("selectYear").style : ie? document.all.selectYear : document.selectYear
   monthConstructed=false;
   yearConstructed=false;
   if (showToday==1)
   {
    document.getElementById("lblToday").innerHTML = todayString + " <a onmousemove='window.status=\""+gotoString+"\"' onmouseout='window.status=\"\"' title='"+gotoString+"' style='"+styleAnchor+"' href='javascript:monthSelected=monthNow;yearSelected=yearNow;constructCalendar();'>"+dayName[(today.getDay()-startAt==-1)?6:(today.getDay()-startAt)]+", " + dateNow + " " + monthName[monthNow].substring(0,3) + " " + yearNow + "</a>"
   }
   sHTML1="<span id='spanLeft' style='border-style:solid;border-width:1;border-color:#3366FF;cursor:pointer' onmouseover='swapImage(\"changeLeft\",\"left2.gif\");this.style.borderColor=\"#88AAFF\";window.status=\""+scrollLeftMessage+"\"' onclick='javascript:decMonth()' onmouseout='clearInterval(intervalID1);swapImage(\"changeLeft\",\"left1.gif\");this.style.borderColor=\"#3366FF\";window.status=\"\"' onmousedown='clearTimeout(timeoutID1);timeoutID1=setTimeout(\"StartDecMonth()\",500)' onmouseup='clearTimeout(timeoutID1);clearInterval(intervalID1)'>&nbsp<IMG id='changeLeft' SRC='"+imgDir+"left1.gif' width=10 height=11 BORDER=0>&nbsp</span>&nbsp;"
   sHTML1+="<span id='spanRight' style='border-style:solid;border-width:1;border-color:#3366FF;cursor:pointer' onmouseover='swapImage(\"changeRight\",\"right2.gif\");this.style.borderColor=\"#88AAFF\";window.status=\""+scrollRightMessage+"\"' onmouseout='clearInterval(intervalID1);swapImage(\"changeRight\",\"right1.gif\");this.style.borderColor=\"#3366FF\";window.status=\"\"' onclick='incMonth()' onmousedown='clearTimeout(timeoutID1);timeoutID1=setTimeout(\"StartIncMonth()\",500)' onmouseup='clearTimeout(timeoutID1);clearInterval(intervalID1)'>&nbsp<IMG id='changeRight' SRC='"+imgDir+"right1.gif' width=10 height=11 BORDER=0>&nbsp</span>&nbsp"
   sHTML1+="<span id='spanMonth' style='border-style:solid;border-width:1;border-color:#3366FF;cursor:pointer' onmouseover='swapImage(\"changeMonth\",\"drop2.gif\");this.style.borderColor=\"#88AAFF\";window.status=\""+selectMonthMessage+"\"' onmouseout='swapImage(\"changeMonth\",\"drop1.gif\");this.style.borderColor=\"#3366FF\";window.status=\"\"' onclick='popUpMonth()'></span>&nbsp;"
   sHTML1+="<span id='spanYear' style='border-style:solid;border-width:1;border-color:#3366FF;cursor:pointer' onmouseover='swapImage(\"changeYear\",\"drop2.gif\");this.style.borderColor=\"#88AAFF\";window.status=\""+selectYearMessage+"\"' onmouseout='swapImage(\"changeYear\",\"drop1.gif\");this.style.borderColor=\"#3366FF\";window.status=\"\"' onclick='popUpYear()'></span>&nbsp;"
  
   document.getElementById("caption").innerHTML  = sHTML1
   bPageLoaded=true
  }
}
function hideCalendar()
{
  crossobj.visibility="hidden"
  if (crossMonthObj != null)
  {
   crossMonthObj.visibility="hidden"
  }
  if (crossYearObj != null)
  {
   crossYearObj.visibility="hidden"
  }
     showElement( 'Select' );
  showElement( 'APPLET' );
}
function padZero(num)
{
  return (num < 10)? '0' + num : num ;
}
function constructDate(d,m,y)
{
  sTmp = dateFormat
  sTmp = sTmp.replace ("dd","<e>")
  sTmp = sTmp.replace ("d","<d>")
  sTmp = sTmp.replace ("<e>",padZero(d))
  sTmp = sTmp.replace ("<d>",d)
  sTmp = sTmp.replace ("mmmm","<p>")
  sTmp = sTmp.replace ("mmm","<o>")
  sTmp = sTmp.replace ("mm","<n>")
  sTmp = sTmp.replace ("m","<m>")
  sTmp = sTmp.replace ("<m>",m+1)
  sTmp = sTmp.replace ("<n>",padZero(m+1))
  sTmp = sTmp.replace ("<o>",monthName[m])
  sTmp = sTmp.replace ("<p>",monthName2[m])
  sTmp = sTmp.replace ("yyyy",y)
  return sTmp.replace ("yy",padZero(y%100))
}
function closeCalendar()
{
  var sTmp
  hideCalendar();
  ctlToPlaceValue.value = constructDate(dateSelected,monthSelected,yearSelected)
}
/*** Month Pulldown ***/
function StartDecMonth()
{
  intervalID1=setInterval("decMonth()",80)
}
function StartIncMonth()
{
  intervalID1=setInterval("incMonth()",80)
}
function incMonth ()
{
  monthSelected++
  if (monthSelected>11)
  {
   monthSelected=0
   yearSelected++
  }
  constructCalendar()
}
function decMonth ()
{
  monthSelected--
  if (monthSelected<0)
  {
   monthSelected=11
   yearSelected--
  }
  constructCalendar()
}

function upMonth()
{
  if(nStartingMonth > 0)
  {
   nStartingMonth --;
   for (i=0; i<6; i++)
   {
    newMonth = (i + nStartingMonth);
    if (newMonth == monthSelected)
     txtMonth = "&nbsp;<B>" + monthName[newMonth] + "</B>&nbsp;";
    else
     txtMonth = "&nbsp;" + monthName[newMonth] + "&nbsp;";
    document.getElementById("m"+i).innerHTML = txtMonth;
   }
  }
  bShow=true
}
function downMonth()
{
  if(nStartingMonth < 6)
  {
   nStartingMonth ++;
   for (i=0; i<6; i++)
   {
    newMonth = (i + nStartingMonth);
    if (newMonth == monthSelected)
     txtMonth = "&nbsp;<B>" + monthName[newMonth] + "</B>&nbsp;";
    else
     txtMonth = "&nbsp;" + monthName[newMonth] + "&nbsp;";
    document.getElementById("m"+i).innerHTML = txtMonth;
   }
  }
  bShow=true
}

function selectMonth(nMonth)
{
  monthSelected=parseInt(nMonth+nStartingMonth);
  monthConstructed=false;
  constructCalendar();
  popDownMonth();
}

function constructMonth()
{
  popDownYear()
  if (!monthConstructed)
  {
   sHTML = "<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(intervalID1);this.style.backgroundColor=\"\"' style='cursor:pointer' onmousedown='clearInterval(intervalID1);intervalID1=setInterval(\"upMonth()\",30)' onmouseup='clearInterval(intervalID1)'>-</td></tr>"
   j=0;
   i=(monthSelected-3);
   if(i < 0)
    i=0;
   if(i > 6)
    i=6;
   nStartingMonth = i;
   for (ii=0; ii<6; ii++, i++, j++)
   {
    sName = monthName[i];
    if (i==monthSelected)
    {
     sName = "<B>" + sName + "</B>"
    }
    sHTML += "<tr><td id='m" + j + "' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='this.style.backgroundColor=\"\"' style='cursor:pointer' onclick='selectMonth(" + j + ");event.cancelBubble=true'>&nbsp;" + sName + "&nbsp;</td></tr>"
   }
   sHTML += "<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(intervalID2);this.style.backgroundColor=\"\"' style='cursor:pointer' onmousedown='clearInterval(intervalID2);intervalID2=setInterval(\"downMonth()\",30)' onmouseup='clearInterval(intervalID2)'>+</td></tr>"
   document.getElementById("selectMonth").innerHTML = "<table width=32 style='font-family:arial; font-size:11px; border-width:1; border-style:solid; border-color:#a0a0a0;' bgcolor='#FFFFDD' cellspacing=0 onmouseover='clearTimeout(timeoutID1)' onmouseout='clearTimeout(timeoutID1);timeoutID1=setTimeout(\"popDownMonth()\",100);event.cancelBubble=true'>" + sHTML + "</table>"
   monthConstructed=true
  }
}
function popUpMonth()
{
  constructMonth()
  crossMonthObj.visibility = (dom||ie)? "visible" : "show"
  crossMonthObj.left = parseInt(crossobj.left) + 50
  crossMonthObj.top = parseInt(crossobj.top) + 26
  hideElement( 'Select', document.getElementById("selectMonth") );
  hideElement( 'APPLET', document.getElementById("selectMonth") );  
}
function popDownMonth()
{
  crossMonthObj.visibility= "hidden"
}
/*** Year Pulldown ***/
function incYear()
{
  for (i=0; i<6; i++)
  {
   newYear = (i+nStartingYear)+1
   if (newYear==yearSelected)
   {
    txtYear = "&nbsp;<B>" + newYear + "</B>&nbsp;"
   }
   else
   {
    txtYear = "&nbsp;" + newYear + "&nbsp;"
   }
   document.getElementById("y"+i).innerHTML = txtYear
  }
  nStartingYear ++;
  bShow=true
}
function decYear()
{
  for (i=0; i<6; i++)
  {
   newYear = (i+nStartingYear)-1
   if (newYear==yearSelected)
   {
    txtYear = "&nbsp;<B>" + newYear + "</B>&nbsp;"
   }
   else
   {
    txtYear = "&nbsp;" + newYear + "&nbsp;"
   }
   document.getElementById("y"+i).innerHTML = txtYear
  }
  nStartingYear --;
  bShow=true
}
function selectYear(nYear)
{
  yearSelected=parseInt(nYear+nStartingYear);
  yearConstructed=false;
  constructCalendar();
  popDownYear();
}
function constructYear()
{
  popDownMonth()
  sHTML = ""
  if (!yearConstructed)
  {
   sHTML = "<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(intervalID1);this.style.backgroundColor=\"\"' style='cursor:pointer' onmousedown='clearInterval(intervalID1);intervalID1=setInterval(\"decYear()\",30)' onmouseup='clearInterval(intervalID1)'>-</td></tr>"
   j = 0
   nStartingYear = yearSelected-3
   for (i=(yearSelected-3); i<(yearSelected+3); i++)
   {
    sName = i;
    if (i==yearSelected)
    {
     sName = "<B>" + sName + "</B>"
    }
    sHTML += "<tr><td id='y" + j + "' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='this.style.backgroundColor=\"\"' style='cursor:pointer' onclick='selectYear("+j+");event.cancelBubble=true'>&nbsp;" + sName + "&nbsp;</td></tr>"
    j ++;
   }
   sHTML += "<tr><td align='center' onmouseover='this.style.backgroundColor=\"#FFCC99\"' onmouseout='clearInterval(intervalID2);this.style.backgroundColor=\"\"' style='cursor:pointer' onmousedown='clearInterval(intervalID2);intervalID2=setInterval(\"incYear()\",30)' onmouseup='clearInterval(intervalID2)'>+</td></tr>"
   document.getElementById("selectYear").innerHTML = "<table width=44 style='font-family:arial; font-size:11px; border-width:1; border-style:solid; border-color:#a0a0a0;' bgcolor='#FFFFDD' onmouseover='clearTimeout(timeoutID2)' onmouseout='clearTimeout(timeoutID2);timeoutID2=setTimeout(\"popDownYear()\",100)' cellspacing=0>" + sHTML + "</table>"
   yearConstructed = true
  }
}
function popDownYear()
{
  clearInterval(intervalID1)
  clearTimeout(timeoutID1)
  clearInterval(intervalID2)
  clearTimeout(timeoutID2)
  crossYearObj.visibility= "hidden"
}
function popUpYear()
{
  var leftOffset
  constructYear()
  crossYearObj.visibility = (dom||ie)? "visible" : "show"
  leftOffset = parseInt(crossobj.left) + document.getElementById("spanYear").offsetLeft
  if (ie)
  {
   leftOffset += 6
  }
  crossYearObj.left = leftOffset
  crossYearObj.top = parseInt(crossobj.top) + 26
}
/*** calendar ***/
   function WeekNbr(n)
   {
      // Algorithm used:
      // From Klaus Tondering's Calendar document (The Authority/Guru)
      // hhtp://www.tondering.dk/claus/calendar.html
      // a = (14-month) / 12
      // y = year + 4800 - a
      // m = month + 12a - 3
      // J = day + (153m + 2) / 5 + 365y + y / 4 - y / 100 + y / 400 - 32045
      // d4 = (J + 31741 - (J mod 7)) mod 146097 mod 36524 mod 1461
      // L = d4 / 1460
      // d1 = ((d4 - L) mod 365) + L
      // WeekNumber = d1 / 7 + 1

      year = n.getFullYear();
      month = n.getMonth() + 1;
      if (startAt == 0)
      {
         day = n.getDate() + 1;
      }
      else
      {
         day = n.getDate();
      }

      a = Math.floor((14-month) / 12);
      y = year + 4800 - a;
      m = month + 12 * a - 3;
      b = Math.floor(y/4) - Math.floor(y/100) + Math.floor(y/400);
      J = day + Math.floor((153 * m + 2) / 5) + 365 * y + b - 32045;
      d4 = (((J + 31741 - (J % 7)) % 146097) % 36524) % 1461;
      L = Math.floor(d4 / 1460);
      d1 = ((d4 - L) % 365) + L;
      week = Math.floor(d1/7) + 1;

      return week;
   }
function constructCalendar ()
{
  var aNumDays = Array (31,0,31,30,31,30,31,31,30,31,30,31)
  var dateMessage
  var startDate = new Date (yearSelected,monthSelected,1)
  var endDate
  if (monthSelected==1)
  {
   endDate = new Date (yearSelected,monthSelected+1,1);
   endDate = new Date (endDate - (24*60*60*1000));
   numDaysInMonth = endDate.getDate()
  }
  else
  {
   numDaysInMonth = aNumDays[monthSelected];
  }
  datePointer = 0
  dayPointer = startDate.getDay() - startAt
  
  if (dayPointer<0)
  {
   dayPointer = 6
  }
  sHTML = "<table  border=0 style='font-family:verdana;font-size:10px;'><tr>"
  if (showWeekNumber==1)
  {
   sHTML += "<td width=27><b>" + weekString + "</b></td><td width=1 rowspan=7 bgcolor='#d0d0d0' style='padding:0px'><img src=&||((parseInt(Holidays[k].y)==yearSelected)&&(parseInt(Holidays[k].y)!=0)))
     {
      sStyle+="background-color:#FFDDDD;"
      sHint+=sHint==""?Holidays[k].desc:"\n"+Holidays[k].desc
     }
    }
   }
   var regexp= /\"/g
   sHint=sHint.replace(regexp,"&quot;")
   dateMessage = "onmousemove='window.status=\""+selectDateMessage.replace("[date]",constructDate(datePointer,monthSelected,yearSelected))+"\"' onmouseout='window.status=\"\"' "
   if ((datePointer==dateNow)&&(monthSelected==monthNow)&&(yearSelected==yearNow))
   {
    sHTML += "<b><a "+dateMessage+" title=\"" + sHint + "\" style='"+sStyle+"' href='javascript:dateSelected="+datePointer+";closeCalendar();'><font color=#ff0000>&nbsp;" + datePointer + "</font>&nbsp;</a></b>"
   }
   else if (dayPointer % 7 == (startAt * -1)+1)
   {
    sHTML += "<a "+dateMessage+" title=\"" + sHint + "\" style='"+sStyle+"' href='javascript:dateSelected="+datePointer + ";closeCalendar();'>&nbsp;<font color=#909090>" + datePointer + "</font>&nbsp;</a>"
   }
   else
   {
    sHTML += "<a "+dateMessage+" title=\"" + sHint + "\" style='"+sStyle+"' href='javascript:dateSelected="+datePointer + ";closeCalendar();'>&nbsp;" + datePointer + "&nbsp;</a>"
   }
   sHTML += ""
   if ((dayPointer+startAt) % 7 == startAt)
   {
    sHTML += "</tr><tr>"
    if ((showWeekNumber==1)&&(datePointer<numDaysInMonth))
    {
     sHTML += "<td align=right>" + (WeekNbr(new Date(yearSelected,monthSelected,datePointer+1))) + "&nbsp;</td>"
    }
   }
  }
  document.getElementById("content").innerHTML   = sHTML
  document.getElementById("spanMonth").innerHTML = "&nbsp;" + monthName[monthSelected] + "&nbsp;<IMG id='changeMonth' SRC='"+imgDir+"drop1.gif' WIDTH='12' HEIGHT='10' BORDER=0>"
  document.getElementById("spanYear").innerHTML = "&nbsp;" + yearSelected + "&nbsp;<IMG id='changeYear' SRC='"+imgDir+"drop1.gif' WIDTH='12' HEIGHT='10' BORDER=0>"
}
function popUpCalendar(ctl, ctl2, format)
{
  var leftpos=0
  var toppos=0
  if (bPageLoaded)
  {
   if ( crossobj.visibility == "hidden" )
   {
    ctlToPlaceValue = ctl2
    dateFormat=format;
    formatChar = " "
    aFormat = dateFormat.split(formatChar)
    if (aFormat.length<3)
    {
     formatChar = "/"
     aFormat = dateFormat.split(formatChar)
     if (aFormat.length<3)
     {
      formatChar = "."
      aFormat = dateFormat.split(formatChar)
      if (aFormat.length<3)
      {
       formatChar = "-"
       aFormat = dateFormat.split(formatChar)
       if (aFormat.length<3)
       {
        // invalid date format
        formatChar=""
       }
      }
     }
    }
    tokensChanged = 0
    if ( formatChar != "" )
    {
     // use user's date
     aData = ctl2.value.split(formatChar)
     for (i=0;i<3;i++)
     {
      if ((aFormat[i]=="d") || (aFormat[i]=="dd"))
      {
       dateSelected = parseInt(aData[i], 10)
       tokensChanged ++
      }
      else if ((aFormat[i]=="m") || (aFormat[i]=="mm"))
      {
       monthSelected = parseInt(aData[i], 10) - 1
       tokensChanged ++
      }
      else if (aFormat[i]=="yyyy")
      {
       yearSelected = parseInt(aData[i], 10)
       tokensChanged ++
      }
      else if (aFormat[i]=="mmm")
      {
       for (j=0; j<12; j++)
       {
        if (aData[i]==monthName[j])
        {
         monthSelected=j
         tokensChanged ++
        }
       }
      }
      else if (aFormat[i]=="mmmm")
      {
       for (j=0; j<12; j++)
       {
        if (aData[i]==monthName2[j])
        {
         monthSelected=j
         tokensChanged ++
        }
       }
      }
     }
    }
    if ((tokensChanged!=3)||isNaN(dateSelected)||isNaN(monthSelected)||isNaN(yearSelected))
    {
     dateSelected = dateNow
     monthSelected = monthNow
     yearSelected = yearNow
    }
    odateSelected=dateSelected
    omonthSelected=monthSelected
    oyearSelected=yearSelected
    aTag = ctl
    do
    {
     aTag = aTag.offsetParent;
     leftpos += aTag.offsetLeft;
     toppos += aTag.offsetTop;
    } while(aTag.tagName!="BODY");
    crossobj.left = fixedX==-1 ? ctl.offsetLeft + leftpos : fixedX
    crossobj.top = fixedY==-1 ? ctl.offsetTop + toppos + ctl.offsetHeight + 2 : fixedY
    constructCalendar (1, monthSelected, yearSelected);
    crossobj.visibility=(dom||ie)? "visible" : "show"
    hideElement( 'Select', document.getElementById("calendar") );
    hideElement( 'APPLET', document.getElementById("calendar") );  
    bShow = true;
   }
   else
   {
    hideCalendar()
    if (ctlNow!=ctl) {popUpCalendar(ctl, ctl2, format)}
   }
   ctlNow = ctl
  }
}
document.onkeypress = function hidecal1 ()
{
  if (event.keyCode==27)
  {
   hideCalendar()
  }
}
document.onclick = function hidecal2 ()
{  
  if (!bShow)
  {
   hideCalendar()
  }
  bShow = false
}
if(ie)
{
  init()
}
else
{
  window.onload=init
}
//-->
      </SCRIPT>
</head>
<body>
     <table><tr><td><INPUT id="Text1" onclick='popUpCalendar(this, this, " mm/dd/yyyy")' readOnly type="text"
         size="11" name="Text1"></td></tr></table>
</body>
</html>
  说明:close.gif、drop1.gif、drop2.gif、left1.gif、left2.gif、right1.gif、right2.gif分别为关闭图片(14*13)、向下的箭头1(11*10)、向下的箭头2(11*10)、向左的箭头1(10*11)、向左的箭头2(10*11)、向右的箭头1(10*11)、向右的箭头2(10*11)]>
http://www.cxblog.net/default.asp?id=355 <![CDATA[Input的一些高级应用]> lyjier@163.com(lyjier) Sat,25 Apr 2009 10:45:25 +0800 http://www.cxblog.net/default.asp?id=355   在input里添加属性值  hideFocus 或者 HideFocus=true

2.只读文本框内容
  在input里添加属性值  readonly

3.ENTER键可以让光标移到下一个输入框
  <input onkeydown="if(event.keyCode==13)event.keyCode=9" >  

4.只能为中文(有闪动)   
  <input onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9">  

5.只能为数字(有闪动)
  <input onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">

6.只能为数字(无闪动)
  <input style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9" onKeyPress="if ((event.keyCode<48 || event.keyCode>57)) event.returnValue=false">  

7.只能输入英文和数字(有闪动)
  <input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">]>
http://www.cxblog.net/default.asp?id=353 <![CDATA[Access转换成SQL数据库需要注意的几点]> lyjier@163.com(lyjier) Sat,25 Apr 2009 10:32:13 +0800 http://www.cxblog.net/default.asp?id=353
所有的默认值都丢失了。主要是数字类型和日期类型。

所有now(),time(),date()要改成getdate()。

所有datediff('d', time1, time2)要改成datediff(day, time1, time2)

有可能一些true/false类型不能使用,要变为1/0。

备注类型要通过cast(column as varchar)来使用。

CursorType要改成1,也就是打开数据库时要给出第一个数字参数为1,否则记录可能显示不完整。

isnull(rowname)要改成rowname = null

ACCESS的数据库中的自动编号类型在转化时,sql server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!

转化时,跟日期有关的字段,SQL SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。有时用smalldatetime型时,转化失败,而用datetime型时,转化成功。

对此两种数据库进行操作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:"delete * from user where id=10",而对SQL SERVER数据库进行删除是用:"delete user where id=10".

日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对SQL SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。

在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL SERVER数据库处理中,却不能用。]>
http://www.cxblog.net/default.asp?id=345 <![CDATA[CSS解决连续英文不能自动换行的方法]> lyjier@163.com(lyjier) Wed,22 Oct 2008 17:01:44 +0800 http://www.cxblog.net/default.asp?id=345
  对于div


  1、(IE浏览器)white-space:normal; word-break:break-all;这里前者是遵循标准。
  #wrap{white-space:normal; width:200px; }
  或者
  #wrap{word-break:break-all;width:200px;}
  <div >ddd1111111111111111111111111111111111</div>
  效果:可以实现换行


  2、(Firefox浏览器)white-space:normal; word-break:break-all;overflow:hidden;同样的FF下也没有很好的实现方法,只能隐藏或者加滚动条,当然不加滚动条效果更好!
  #wrap{white-space:normal; width:200px; overflow:auto;}
  或者
  #wrap{word-break:break-all;width:200px; overflow:auto; }
  <div >ddd1111111111111111111111111111111111111111</div>
  效果:容器正常,内容隐藏


  对于table

  1、(IE浏览器)使用样式table-layout:fixed;
引用内容 引用内容
<style>
.tb{table-layout:fixed}
</style>
<table width="80">
<tr><td>abcdefghigklmnopqrstuvwxyz 1234567890</td></tr>
</table>


  效果:可以自动换行

  2、(IE浏览器)使用样式table-layout:fixed与nowrap
引用内容 引用内容
<style>
.tb {table-layout:fixed}
</style>
<table width="80">
<tr><td nowrap>abcdefghigklmnopqrstuvwxyz 1234567890</td></tr>
</table>



  效果:可以自动换行

  3、(IE浏览器)在使用百分比固定td大小情况下使用样式table-layout:fixed与nowrap

引用内容 引用内容
<style>
.tb{table-layout:fixed}
</style>
<table width=80>
<tr><td width=25% nowrap>abcdefghigklmnopqrstuvwxyz 1234567890</td>
<td nowrap>abcdefghigklmnopqrstuvwxyz 1234567890</td></tr>
</table>



  效果:两个td均正常自动换行

  4、(Firefox浏览器)在使用百分比固定td大小情况下使用样式table-layout:fixed与nowrap,并且使用div

引用内容 引用内容
<style>
.tb {table-layout:fixed}
.td {overflow:hidden;}
</style>
<table width=80>
<tr><td width=25% nowrap>
<div>abcdefghigklmnopqrstuvwxyz 1234567890</div></td>
<td nowrap><div>abcdefghigklmnopqrstuvwxyz 1234567890</div></td></tr>
</table>


  这里单元格宽度一定要用百分比定义

  效果:正常显示,但不能换行(注:在FF下还没有能使容器内容换行的好方法,只能用overflow将多出的内容隐藏,以免影响整体效果)]>
http://www.cxblog.net/default.asp?id=342 <![CDATA[IE浏览器浏览内容快速变成灰色]> lyjier@163.com(ier00) Sat,05 Jul 2008 16:31:11 +0800 http://www.cxblog.net/default.asp?id=342
第一点,在html页面中:在body中加入下面语句  

  <body style="filter: progid:DXImageTransform.Microsoft.BasicImagegrayscale=1);"> 。  

第二点,在css控制表中:加入下面语句  

html { filter: progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}    

完成以上二点即可!不过只限于IE网页!



有一些网站FLASH动画的颜色不能被CSS滤镜控制,可以在FLASH代码的 <object …>和 </object>之间插入:

<param value="false" name="menu"/>
<param value="opaque" name="wmode"/>
]>
http://www.cxblog.net/default.asp?id=339 <![CDATA[图片无缝滚动代码]> lyjier@163.com(ier00) Wed,28 May 2008 11:16:36 +0800 http://www.cxblog.net/default.asp?id=339
先介绍一下它的实现思路:一个设定宽度并且隐藏超出它宽度的内容的容器demo,里面放demo1和demo2,demo1是滚动内容,demo2为demo1的直接克隆,通过不断改变demo1的scrollTop或者scrollLeft达到滚动的目的,当滚动至demo1与demo2的交界处时直接跳回初始位置,因为demo1与demo2一样,所以分不出跳动的瞬间,从而达到“无缝”滚动的目的。

先了解一下对象的几个的属性:
innerHTML:设置或获取位于对象起始和结束标签内的 HTML
scrollHeight: 获取对象的滚动高度。
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
scrollWidth:获取对象的滚动宽度
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
offsetWidth:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的宽度


向上滚动的代码:
<div id=demo style=overflow:hidden;height:400;width:160;background:#214984;color:#ffffff><table align=top cellpadding=0 cellspace=0 border=0><tr><td id=demo1 valign=top><img src="pic/1.jpg" width="156" height="200" /><br><img src="pic/2.jpg" width="160" height="198" /><br><img src="pic/3.jpg" width="155" height="200" /><br><img src="pic/4.jpg" width="157" height="200" /></td></tr><tr><td id=demo2 valign=top></td></tr></table></div>
<script>
var speed=30
demo2.innerHTML=demo1.innerHTML//克隆demo1为demo2
function Marquee(){
if(demo2.offsetHeight-demo.scrollTop<=0)//当滚动至demo1与demo2交界时
demo.scrollTop-=demo1.offsetHeight//demo跳到最顶端
else{
demo.scrollTop++
}
}
var MyMar=setInterval(Marquee,speed)//设置定时器
demo.onmouseover=function() {clearInterval(MyMar)}//鼠标移上时清除定时器达到滚动停止的目的
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}//鼠标移开时重设定时器
</script>


向下滚动:
<div id=demo style=overflow:hidden;height:400;width:160;background:#214984;color:#ffffff><table align=top cellpadding=0 cellspace=0 border=0><tr><td id=demo1 valign=top><img src="pic/1.jpg" width="156" height="200" /><br><img src="pic/2.jpg" width="160" height="198" /><br><img src="pic/3.jpg" width="155" height="200" /><br><img src="pic/4.jpg" width="157" height="200" /></td></tr><tr><td id=demo2 valign=top></td></tr></table></div>
<script>
var speed=30
demo2.innerHTML=demo1.innerHTML
function Marquee(){
if(demo.scrollTop<=0)
demo.scrollTop+=demo2.offsetHeight
else{
demo.scrollTop--
}
}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>


向左滚动:
<div id=demo style=overflow:hidden;height:200;width:500;background:#214984;color:#ffffff><table align=left cellpadding=0 cellspace=0 border=0><tr><td id=demo1 valign=top><img src="pic/1.jpg" width="156" height="200" /><img src="pic/2.jpg" width="160" height="198" /><img src="pic/3.jpg" width="155" height="200" /><img src="pic/4.jpg" width="157" height="200" /></td><td id=demo2 valign=top></td></tr></table></div>
<script>
var speed=30
demo2.innerHTML=demo1.innerHTML
function Marquee(){
if(demo2.offsetWidth-demo.scrollLeft<=0)
demo.scrollLeft-=demo1.offsetWidth
else{
demo.scrollLeft++
}
}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>



向右滚动:
<div id=demo style=overflow:hidden;height:200;width:500;background:#214984;color:#ffffff><table align=left cellpadding=0 cellspace=0 border=0><tr><td id=demo1 valign=top><img src="pic/1.jpg" width="156" height="200" /><img src="pic/2.jpg" width="160" height="198" /><img src="pic/3.jpg" width="155" height="200" /><img src="pic/4.jpg" width="157" height="200" /></td><td id=demo2 valign=top></td></tr></table></div>
<script>
var speed=30
demo2.innerHTML=demo1.innerHTML
function Marquee(){
if(demo.scrollLeft<=0)
demo.scrollLeft+=demo2.offsetWidth
else{
demo.scrollLeft--
}
}
var MyMar=setInterval(Marquee,speed)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}
</script>
]>
http://www.cxblog.net/default.asp?id=335 <![CDATA[带颜色的下拉菜单]> lyjier@163.com(lyjier) Tue,11 Mar 2008 15:49:42 +0800 http://www.cxblog.net/default.asp?id=335 〈option selected〉:: Dreamweaver4 ::〈/option〉
〈option〉::Flash5::〈/option〉
〈option〉::Firewoks4::〈/option〉
〈/select〉]>