<!-- ---------------------------------------------------------------------
//
// Copyright 2000 Microsoft Corporation. All Rights Reserved.
//
// File: calendar.htc
//
// Description: The calendar behavior provides an easy, declarative way
// to add a standard calendar control to web pages and html
// based applications. It provides a variety of properties
// to customize the look and feel along with a strong set
// events and functionality.
//
//-------------------------------------------------------------------- -->
<script language="javascript">
//------------------------------------------------------------------------
// Attach to element events
//------------------------------------------------------------------------
element.attachEvent("onselectstart", fnOnSelectStart)
element.attachEvent("onclick", fnOnClick)
element.attachEvent("onpropertychange", fnOnPropertyChange)
element.attachEvent("onreadystatechange", fnOnReadyStateChange)
//------------------------------------------------------------------------
// Create the arrays of days & months for different languages
//------------------------------------------------------------------------
var gaMonthNames = new Array(
new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'),
new Array('January', 'February', 'March', 'April', 'May', 'June', 'July',
'August', 'September', 'October', 'November', 'December')
);
var gaDayNames = new Array(
new Array('S', 'M', 'T', 'W', 'T', 'F', 'S'),
new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'),
new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday')
);
var gaMonthDays = new Array(
/* Jan */ 31, /* Feb */ 29, /* Mar */ 31, /* Apr */ 30,
/* May */ 31, /* Jun */ 30, /* Jul */ 31, /* Aug */ 31,
/* Sep */ 30, /* Oct */ 31, /* Nov */ 30, /* Dec */ 31 )
var StyleInfo = null // Style sheet with rules for this calendar
var goStyle = new Object() // A hash of style sheet rules that apply to this calendar
var gaDayCell = new Array() // an array of the table cells for days
var goDayTitleRow = null // The table row containing days of the week
var goYearSelect = null // The year select control
var goMonthSelect = null // The month select control
var goCurrentDayCell = null // The cell for the currently selected day
var giStartDayIndex = 0 // The index in gaDayCell for the first day of the month
var gbLoading = true // Flag for if the behavior is loading
var giDay // day of the month (1 to 31)
var giMonth // month of the year (1 to 12)
var giYear // year (1900 to 2099)
var giMonthLength = 1 // month length (0,1)
var giDayLength = 1 // day length (0 to 2)
var giFirstDay = 0 // first day of the week (0 to 6)
var gsGridCellEffect = 'raised' // Grid cell effect
var gsGridLinesColor = 'black' // Grid line color
var gbShowDateSelectors = true // Show date selectors (0,1)
var gbShowDays = true // Show the days of the week titles (0,1)
var gbShowTitle = true // Show the title (0,1)
var gbShowHorizontalGrid = true // Show the horizontal grid (0,1)
var gbShowVerticalGrid = true // Show the vertical grid (0,1)
var gbValueIsNull = false // There is no value selected (0,1)
var gbReadOnly = false // The user can not interact with the control
var giMinYear = 1900 // Minimum year (1 is the lowest possible value)
var giMaxYear = 2099 // Maximum year
// Load the property values defined on the element to replace defaults
fnGetPropertyDefaults()
// Create the style sheets needed for the calendar display
fnCreateStyleSheets()
// Insert the HTML elements needed for the calendar display
fnCreateCalendarHTML()
// Update the title with the month and year
fnUpdateTitle()
// Fill in the days of the week
fnUpdateDayTitles()
// Build the month select control
fnBuildMonthSelect()
// Build the year select control
fnBuildYearSelect()
// Fill in the cells with the days of the month and set style values
fnFillInCells()
// **********************************************************************
// PROPERTY GET/SET FUNCTIONS
// **********************************************************************
//------------------------------------------------------------------------
//
// Function: fnGetDay / fnPutDay
//
// Synopsis: The day property is used to set the day of the month. The
// valid range is from 1 to the maximum day of the selected
// month & year. If a number is given outside that range, it
// is set to the closest valid value. Invalid input will cause
// an exception.
//
// Arguments: The put method requires an integer value for the day
//
// Returns: The get method will return the selected day of the month
// If the valueIsNull property is set, null is returned
//
// Notes: none
//
//------------------------------------------------------------------------
function fnGetDay()
{
return (gbValueIsNull) ? null : giDay
}
function fnPutDay(iDay)
{
if (gbLoading) return // return if the behavior is loading
iDay = parseInt(iDay)
if (isNaN(iDay)) throw 450
fnSetDate(iDay, giMonth, giYear)
}
//------------------------------------------------------------------------
//
// Function: fnGetMonth / fnPutMonth
//
// Synopsis: The month property is used to set the month of the year.
// The valid range is from 1 to 12. If a value is given
// outside that range, it is set to the closest valid value.
// Invalid input will cause an exception.
//
// Arguments: The put method requires an integer value for the month
//
// Returns: The get method will return the selected month value
// If the valueIsNull property is set, null is returned
//
// Notes: Setting the year can cause the selected "day" value to be
// reduced to the highest day in the selected month if needed.
//
//------------------------------------------------------------------------
function fnGetMonth()
{
return (gbValueIsNull) ? null : giMonth
}
function fnPutMonth(iMonth)
{
if (gbLoading) return // return if the behavior is loading
iMonth = parseInt(iMonth)
if (isNaN(iMonth)) throw 450
fnSetDate(giDay, iMonth, giYear)
}
//------------------------------------------------------------------------
//
// Function: fnGetYear / fnPutYear
//
// Synopsis: The year property is used to set the current year.
// The valid range is from minYear to maxYear. If a value is given
// outside that range, it is set to the closest valid value.
// Invalid input will cause an exception.
//
// Arguments: The put method requires an integer value for the year
//
// Returns: The get method will return the selected year value
// If the valueIsNull property is set, null is returned.
//
// Notes: Setting the year can cause the selected "day" value to be
// reduced to the highest day in the selected month if needed.
//
//------------------------------------------------------------------------
function fnGetYear()
{
return (gbValueIsNull) ? null : giYear
}
function fnPutYear(iYear)
{
if (gbLoading) return // return if the behavior is loading
iYear = parseInt(iYear)
if (isNaN(iYear)) throw 450
fnSetDate(giDay, giMonth, iYear)
}
//-------------------
js20个别类_343个实例
需积分: 0 107 浏览量
更新于2010-09-05
收藏 1.84MB ZIP 举报
JavaScript,简称JS,是Web开发中的核心技术之一,用于实现客户端的动态效果和交互。"js20个别类_343个实例" 提供的资源显然是一份丰富的JS代码实践库,涵盖了20个不同的类别,总计343个实例。这样的资料对于学习和提升JavaScript技能非常有价值,因为它提供了大量可参考和学习的实际代码示例。
我们来探讨一下可能涵盖的20个类别:
1. **基础语法**:包括变量声明、数据类型、运算符、流程控制(条件语句、循环)、函数等基础知识。
2. **对象与原型**:讲解如何创建对象,原型链的工作原理,以及如何利用原型实现继承。
3. **数组操作**:涉及到数组的创建、遍历、查找、排序、合并、分割等各种操作。
4. **字符串处理**:如字符串的拼接、截取、替换、查找等方法。
5. **DOM操作**:如何通过JavaScript操作HTML元素,包括获取、添加、删除、修改元素。
6. **事件处理**:包括事件监听、事件冒泡、事件捕获、自定义事件等。
7. **Ajax请求**:介绍XMLHttpRequest对象的使用,实现异步数据传输。
8. **JSON处理**:JSON的解析和序列化,以及与服务器的数据交换。
9. **正则表达式**:如何使用正则进行数据验证和匹配。
10. **定时器和回调函数**:setTimeout和setInterval的使用,以及异步编程的理解。
11. **闭包**:理解闭包的概念和作用,以及在实际编程中的应用。
12. **作用域和变量提升**:讲解函数作用域、块级作用域,以及变量提升的现象。
13. **函数式编程**:如高阶函数、柯里化、map、reduce等概念。
14. **错误处理**:异常捕获和处理机制。
15. **ES6新特性**:包括let、const、箭头函数、解构赋值、Promise等。
16. **模块化**:CommonJS、AMD、ES6模块导入导出等。
17. **面向对象编程**:构造函数、原型链、类的模拟实现等。
18. **DOM遍历和选择**:querySelector、querySelectorAll等选择器的使用。
19. **CSS操作**:改变样式、动画、布局等。
20. **浏览器兼容性**:如何处理不同浏览器之间的差异。
每个类别下的343个实例,将涵盖这些主题的各个方面,帮助开发者深入理解并掌握JavaScript的用法。这些实例可以帮助初学者巩固基础,同时也能为有经验的开发者提供灵感和解决问题的参考。
通过学习这些实例,你可以:
1. **加深理解**:通过实践,加深对JavaScript核心概念的理解。
2. **提高效率**:学会如何更有效地编写和优化代码。
3. **解决问题**:遇到类似问题时,可以快速找到解决方案。
4. **培养思维**:实例有助于培养解决实际问题的编程思维。
5. **拓宽视野**:了解更多的编程技巧和最佳实践。
在学习过程中,建议结合实际项目或场景,逐步分析和运行这些实例,以便更好地理解和应用所学知识。同时,不断地实践和反思,将理论与实践相结合,才能真正提升JavaScript技能。
q364237398
- 粉丝: 0
- 资源: 3
最新资源
- 20250124zhousan
- 基于java+ssm+mysql的日用品网站系统 源码+数据库+论文(高分毕设项目).zip
- e2fsprogs-devel-1.42.9-19.el7.x64-86.rpm.tar.gz
- 基于java+ssm+mysql的社区物业管理系统 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的省出口基地公共信息服务平台 源码+数据库+论文(高分毕设项目).zip
- 基于爬山搜索法的风力发电MPPT控制Simulink仿真模型研究:定变步长算法对比,永磁同步发电机性能探讨,基于爬山搜索法的风力发电MPPT控制Simulink仿真模型,包括定步长与变步长算法,变步长
- e2fsprogs-libs-1.42.9-19.el7.x64-86.rpm.tar.gz
- e2fsprogs-static-1.42.9-19.el7.x64-86.rpm.tar.gz
- 基于java+ssm+mysql的视频播放系统 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的体育馆管理系统 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的图书商城网站 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的物流管理系统 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的文化培训学校网站 源码+数据库+论文(高分毕设项目).zip
- 基于java+ssm+mysql的外卖点餐系统 源码+数据库+论文(高分毕设项目).zip
- easymock-1.2-22.el7.x64-86.rpm.tar.gz
- 基于java+ssm+mysql的小区疫情防控管理系统 源码+数据库+论文(高分毕设项目).zip