收藏本站腾讯微博新浪微博

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 网站开通淘帖功能 - 蓝色理想插件 论坛内容导读一页看论坛 - 给官方提建议

论坛活动及任务 地图和邮件任务 请多用悬赏提问 热夏来袭,选一款蓝色理想的个性T恤吧!

手机上论坛,使用APP获得更好体验 急需前端攻城狮,获得内部推荐机会 论坛开通淘帖功能,收藏终于可以分类了!

搜索
查看: 1784|回复: 4

[讨论] 为什么我把jq的部分源码拿过来.却用不了呢?

[复制链接]
发表于 2013-7-4 18:47:00 | 显示全部楼层 |阅读模式
  1. (function(window, undefined ) {
  2.                        
  3.                         var _$ = window.$,

  4.                         rootjQuery,

  5.                         // Support: IE<9
  6.                         // For `typeof node.method` instead of `node.method !== undefined`
  7.                         core_strundefined = typeof undefined,

  8.                         _jQuery = window.jQuery,

  9.                         core_version = "1.9.1",

  10.                         // A simple way to check for HTML strings
  11.                         // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
  12.                         // Strict HTML recognition (#11290: must start with <)
  13.                         rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,

  14.                         // Match a standalone tag
  15.                         rsingleTag = /^<(\w+)\s*\/?>(?:<\/\1>|)$/,

  16.                         jQuery = function( selector, context ) {
  17.                                 // The jQuery object is actually just the init constructor 'enhanced'
  18.                                 return new jQuery.fn.init( selector, context, rootjQuery );
  19.                         };

  20.                         jQuery.fn = jQuery.prototype = {
  21.                                 // The current version of jQuery being used
  22.                                 jquery: core_version,

  23.                                 constructor: jQuery,

  24.                                 init: function( selector, context, rootjQuery ) {
  25.                                         var match, elem;

  26.                                         // HANDLE: $(""), $(null), $(undefined), $(false)
  27.                                         if ( !selector ) {
  28.                                                 return this;
  29.                                         }

  30.                                         // Handle HTML strings
  31.                                         if ( typeof selector === "string" ) {
  32.                                                 if ( selector.charAt(0) === "<" && selector.charAt( selector.length - 1 ) === ">" && selector.length >= 3 ) {
  33.                                                         // Assume that strings that start and end with <> are HTML and skip the regex check
  34.                                                         match = [ null, selector, null ];

  35.                                                 } else {
  36.                                                         match = rquickExpr.exec( selector );
  37.                                                 }

  38.                                                 // Match html or make sure no context is specified for #id
  39.                                                 if ( match && (match[1] || !context) ) {

  40.                                                                 elem = document.getElementById( match[2] );

  41.                                                                 // Check parentNode to catch when Blackberry 4.6 returns
  42.                                                                 // nodes that are no longer in the document #6963
  43.                                                                 if ( elem && elem.parentNode ) {
  44.                                                                         // Handle the case where IE and Opera return items
  45.                                                                         // by name instead of ID
  46.                                                                         if ( elem.id !== match[2] ) {
  47.                                                                                 return rootjQuery.find( selector );
  48.                                                                         }

  49.                                                                         // Otherwise, we inject the element directly into the jQuery object
  50.                                                                         this.length = 1;
  51.                                                                         this[0] = elem;
  52.                                                                 }

  53.                                                                 this.context = document;
  54.                                                                 this.selector = selector;
  55.                                                                 return this;
  56.                                                        
  57.                                                 }
  58.                                 }
  59.                         }
  60.                 }

  61.                         // All jQuery objects should point back to these
  62.                         rootjQuery = jQuery(document);

  63.                         // Limit scope pollution from any deprecated API
  64.                         // (function() {

  65.                                                 // })();
  66.                         // Expose jQuery to the global object
  67.                         window.jQuery = window.$ = jQuery;
  68.                         return jQuery;
  69.                        
  70. })(window);
复制代码
我是把jq的获取对象的入口代码拿下来...
<div class="" id="demo"></div>
console.log($("#demo"))  //这里根本获取不到jq对象
发表于 2013-7-4 22:37:21 | 显示全部楼层
你用了插件包吗??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-7-5 09:46:27 | 显示全部楼层
iover 发表于 2013-7-4 22:37
你用了插件包吗??

沒啊.就是jq1.9.1的源碼啊
回复 支持 反对

使用道具 举报

发表于 2013-7-5 10:32:34 | 显示全部楼层
本帖最后由 DoBest 于 2013-7-5 10:34 编辑

ctr+C Ctr+V 也不仔细。
干吗我的1.9.1跟你的不一样。
  1. rquickExpr = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,
复制代码
回复 支持 反对

使用道具 举报

发表于 2013-7-5 10:40:30 | 显示全部楼层

Sizzle的正则给用上了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|Archiver|手机版|blueidea.com ( 湘ICP备12001430号 )  

GMT+8, 2020-8-7 21:25 , Processed in 0.093514 second(s), 7 queries , Gzip On, Memcache On.

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表