// prevent execution of jQuery if included more than once
if(typeof window.jQuery == "undefined") {
/*
* jQuery 1.1.3.1 - New Wave Javascript
*
* Copyright (c) 2007 John Resig (jquery.com)
* Dual licensed under the MIT (MIT-LICENSE.txt)
* and GPL (GPL-LICENSE.txt) licenses.
*
* $Date: 2007-07-05 00:43:24 -0400 (Thu, 05 Jul 2007) $
* $Rev: 2243 $
*/
// Global undefined variable
window.undefined = window.undefined;
var jQuery = function(a,c) {
// If the context is global, return a new object
if ( window == this || !this.init )
return new jQuery(a,c);
return this.init(a,c);
};
// Map over the $ in case of overwrite
if ( typeof $ != "undefined" )
jQuery._$ = $;
// Map the jQuery namespace to the '$' one
var $ = jQuery;
jQuery.fn = jQuery.prototype = {
init: function(a,c) {
// Make sure that a selection was provided
a = a || document;
// HANDLE: $(function)
// Shortcut for document ready
if ( jQuery.isFunction(a) )
return new jQuery(document)[ jQuery.fn.ready ? "ready" : "load" ]( a );
// Handle HTML strings
if ( typeof a == "string" ) {
// HANDLE: $(html) -> $(array)
var m = /^[^<]*(<(.|\s)+>)[^>]*$/.exec(a);
if ( m )
a = jQuery.clean( [ m[1] ] );
// HANDLE: $(expr)
else
return new jQuery( c ).find( a );
}
return this.setArray(
// HANDLE: $(array)
a.constructor == Array && a ||
// HANDLE: $(arraylike)
// Watch for when an array-like object is passed as the selector
(a.jquery || a.length && a != window && !a.nodeType && a[0] != undefined && a[0].nodeType) && jQuery.makeArray( a ) ||
// HANDLE: $(*)
[ a ] );
},
jquery: "1.1.3.1",
size: function() {
return this.length;
},
length: 0,
get: function( num ) {
return num == undefined ?
// Return a 'clean' array
jQuery.makeArray( this ) :
// Return just the object
this[num];
},
pushStack: function( a ) {
var ret = jQuery(a);
ret.prevObject = this;
return ret;
},
setArray: function( a ) {
this.length = 0;
[].push.apply( this, a );
return this;
},
each: function( fn, args ) {
return jQuery.each( this, fn, args );
},
index: function( obj ) {
var pos = -1;
this.each(function(i){
if ( this == obj ) pos = i;
});
return pos;
},
attr: function( key, value, type ) {
var obj = key;
// Look for the case where we're accessing a style value
if ( key.constructor == String )
if ( value == undefined )
return this.length && jQuery[ type || "attr" ]( this[0], key ) || undefined;
else {
obj = {};
obj[ key ] = value;
}
// Check to see if we're setting style values
return this.each(function(index){
// Set all the styles
for ( var prop in obj )
jQuery.attr(
type ? this.style : this,
prop, jQuery.prop(this, obj[prop], type, index, prop)
);
});
},
css: function( key, value ) {
return this.attr( key, value, "curCSS" );
},
text: function(e) {
if ( typeof e == "string" )
return this.empty().append( document.createTextNode( e ) );
var t = "";
jQuery.each( e || this, function(){
jQuery.each( this.childNodes, function(){
if ( this.nodeType != 8 )
t += this.nodeType != 1 ?
this.nodeValue : jQuery.fn.text([ this ]);
});
});
return t;
},
wrap: function() {
// The elements to wrap the target around
var a, args = arguments;
// Wrap each of the matched elements individually
return this.each(function(){
if ( !a )
a = jQuery.clean(args, this.ownerDocument);
// Clone the structure that we're using to wrap
var b = a[0].cloneNode(true);
// Insert it before the element to be wrapped
this.parentNode.insertBefore( b, this );
// Find the deepest point in the wrap structure
while ( b.firstChild )
b = b.firstChild;
// Move the matched element to within the wrap structure
b.appendChild( this );
});
},
append: function() {
return this.domManip(arguments, true, 1, function(a){
this.appendChild( a );
});
},
prepend: function() {
return this.domManip(arguments, true, -1, function(a){
this.insertBefore( a, this.firstChild );
});
},
before: function() {
return this.domManip(arguments, false, 1, function(a){
this.parentNode.insertBefore( a, this );
});
},
after: function() {
return this.domManip(arguments, false, -1, function(a){
this.parentNode.insertBefore( a, this.nextSibling );
});
},
end: function() {
return this.prevObject || jQuery([]);
},
find: function(t) {
var data = jQuery.map(this, function(a){ return jQuery.find(t,a); });
return this.pushStack( /[^+>] [^+>]/.test( t ) || t.indexOf("..") > -1 ?
jQuery.unique( data ) : data );
},
clone: function(deep) {
// Need to remove events on the element and its descendants
var $this = this.add(this.find("*"));
$this.each(function() {
this._$events = {};
for (var type in this.$events)
this._$events[type] = jQuery.extend({},this.$events[type]);
}).unbind();
// Do the clone
var r = this.pushStack( jQuery.map( this, function(a){
return a.cloneNode( deep != undefined ? deep : true );
}) );
// Add the events back to the original and its descendants
$this.each(function() {
var events = this._$events;
for (var type in events)
for (var handler in events[type])
jQuery.event.add(this, type, events[type][handler], events[type][handler].data);
this._$events = null;
});
// Return the cloned set
return r;
},
filter: function(t) {
return this.pushStack(
jQuery.isFunction( t ) &&
jQuery.grep(this, function(el, index){
return t.apply(el, [index])
}) ||
jQuery.multiFilter(t,this) );
},
not: function(t) {
return this.pushStack(
t.constructor == String &&
jQuery.multiFilter(t, this, true) ||
jQuery.grep(this, function(a) {
return ( t.constructor == Array || t.jquery )
? jQuery.inArray( a, t ) < 0
: a != t;
})
);
},
add: function(t) {
return this.pushStack( jQuery.merge(
this.get(),
t.constructor == String ?
jQuery(t).get() :
t.length != undefined && (!t.nodeName || t.nodeName == "FORM") ?
t : [t] )
);
},
is: function(expr) {
return expr ? jQuery.multiFilter(expr,this).length > 0 : false;
},
val: function( val ) {
return val == undefined ?
( this.length ? this[0].value : null ) :
this.attr( "value", val );
},
html: function( val ) {
return val == undefined ?
( this.length ? this[0].innerHTML : null ) :
this.empty().append( val );
},
domManip: function(args, table, dir, fn){
var clone = this.length > 1, a;
return this.each(function(){
if ( !a ) {
a = jQuery.clean(args, this.ownerDocument);
if ( dir < 0 )
a.reverse();
}
var obj = this;
if ( table && jQuery.nodeName(this, "table") && jQuery.nodeName(a[0], "tr") )
obj = this.getElementsByTagName("tbody")[0] || this.appendChild(document.createElement("tbody"));
jQuery.each( a, function(){
fn.apply( obj, [ clone ? this.cloneNode(true) : this ] );
});
});
}
};
jQuery.extend = jQuery.fn.extend = function() {
// copy reference to target object
var target = arguments[0], a = 1;
// extend jQuery itself if only one argument is passed
if ( arguments.length == 1 ) {
target = this;
a = 0;
}
var prop;
while ( (prop = arguments[a++]) != null )
// Extend the base object
for ( var i in prop ) target[i] = prop[i];
// Return the modified object
return target;
};
jQuery.extend({
noConflict: function() {
if ( jQuery._$ )
$ = jQuery._$;
return jQuery;
},
// This may seem like some crazy code, but trust me when I say that this
// is the only cross-browser way to do this. --John
isFunction: function( fn ) {
return !!fn && typeof fn != "string" && !fn.nodeName &&
fn.constructor != Array && /function/i.test( fn + "" );
},
// check if an element is in a XML document
isXMLDoc: function(elem) {
return elem.tagName && elem.ownerDocument && !elem.ownerDocument.body;
},
nodeName: function( elem
jquery-1.1.3.1.js,jquery.linscroll.js



标题中的"jquery-1.1.3.1.js"和"jquery.linscroll.js"都是JavaScript库文件,它们是Web开发中广泛使用的jQuery框架的一部分。jQuery是一个轻量级、功能丰富的JavaScript库,它极大地简化了JavaScript编程,尤其是处理网页DOM(文档对象模型)、事件、动画和Ajax交互。 1. **jQuery核心概念**: - **选择器**:jQuery通过CSS选择器来选取HTML元素,使开发者能快速定位到目标元素。 - **链式调用**:jQuery方法可以链式调用,提高了代码的可读性和效率。 - **DOM操作**:jQuery提供了便利的方法如`$(selector).html()`, `$(selector).append()`, `$(selector).remove()`等,用于操作HTML内容和结构。 - **事件处理**:通过`.on()`, `.click()`, `.mouseover()`等方法绑定和触发事件。 - **动画效果**:jQuery的`.animate()`方法可以创建自定义动画,`.fadeIn()`, `.slideUp()`等预定义动画则提供常见效果。 2. **jQuery 1.1.3.1 版本**: 这是jQuery的一个早期版本,发布于2009年,它包含了许多基础功能和改进。与更现代的版本相比,可能缺少一些特性、性能优化和对新浏览器特性的支持。尽管如此,这个版本在许多旧项目中仍然被广泛使用,因为它的兼容性好,可以确保在老版浏览器上正常运行。 3. **jQuery.linscroll.js**: 这可能是jQuery的一个插件,专门用于实现“线性滚动”效果。线性滚动通常指的是页面内容以平滑、连续的方式移动,而不是传统的跳转或瞬间变换。这种效果常用于新闻滚动、轮播图或长页面滚动。插件可能包含了一些定制的事件处理和动画函数,以实现这种平滑滚动效果。 4. **JavaScript库与文件组织**: 在Web开发中,JavaScript库文件(如jQuery)通常会放置在HTML文件的`<head>`部分,或者在`<body>`的底部,以优化页面加载速度。"新建文件夹"可能表示这些文件在解压后存在于一个特定的目录下,开发者需要正确引用这些文件,才能在网页中使用jQuery和相关的插件功能。 5. **使用方法**: 要使用jQuery,需要在HTML中引入`jquery-1.1.3.1.js`,然后可以通过`<script>`标签引入`jquery.linscroll.js`,并使用`$.fn.linscroll`这样的语法调用插件功能。例如: ```html <script src="path/to/jquery-1.1.3.1.js"></script> <script src="path/to/jquery.linscroll.js"></script> <script> $(document).ready(function() { $('selector').linscroll(options); }); </script> ``` 其中,`options`是一个包含插件设置的对象,根据插件的具体需求进行配置。 总结,"jquery-1.1.3.1.js"和"jquery.linscroll.js"文件涉及到jQuery的基本概念、早期版本的特点以及可能的自定义滚动插件的使用,这些都是前端开发中的重要知识点,对于理解JavaScript库和插件的使用具有指导意义。



















- 1

- 粉丝: 32
- 资源: 19
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 编程语言_Java_框架_库_软件集锦_1742869791.zip
- benoitvallon_computer-science-_1743026104.zip
- 前端_JavaScript_Ninja_课程答疑指南_1742871244.zip
- 图形界面_JavaFX_基础框架类_编程实践_1743032071.zip
- Java_StateMachine_stateless4j__1743032775.zip
- 程序员修炼_好习惯_提问_影响力提升_1743016698.zip
- 计算器_Java_预科课程_教学工具_1743033480.zip
- Beerkay_JavaMultiThreading_1742871905.zip
- 前端开发_Javascript_测试驱动学习_辅助工具_1743032104.zip
- 网络技术_JavaScript_基础编程_学习用书_1742871211.zip
- Java环境管理_jenv_版本切换_开发工具用途_1743013156.zip
- MithunTechnologiesDevOps_java-_1743028016.zip
- Java_编程基础_实践练习_Generation开发教材_1742869837.zip
- 网络通信_Java_TCP_Socket_教程文档_1743032059.zip
- 前端开发_Javascript_俄罗斯方块_游戏娱乐_1743016990.zip
- lxj_javascriptpatterns_1743030005.zip



- 1
- 2
- 3
- 4
- 5
- 6
前往页