小编She*_*des的帖子

$(this)和jquery之间的区别

使用$(this)与此相比有什么根本区别

$('.viewComments').click(function(ev){
    //returns the desired value
    alert(this.getAttribute('id'));

    //Gives an error sayin function is not defined 
    alert($(this).getAttribute('id'));

    //returns the desired value
    alert($(this).attr('id'));
});
Run Code Online (Sandbox Code Playgroud)

我认为"$(this)"将包含"this"具有的所有功能以及更多..但似乎并非如此.

那么究竟是什么(这个)?和

我在使用它时知道哪些功能可用吗?(我知道我可以通过萤火虫来获取它们.但我想知道是否有其他方式 - 某些文档可能是)

jquery this

65
推荐指数
2
解决办法
2万
查看次数

没有服务器端支持的SPA共享(在CDN上托管)

我有一个静态网站,一个托管在CDN上SPA - 基本上是一个单一的index.html,其内容区域根据网址中的哈希值进行更新.我需要为FB共享者找到一种方法来显示SPA中当前加载的主要内容的标题和描述

用简单的话说,Facebook共享可以抓取页面来查找og元标记并缓存它们.当我们尝试共享网址/页面时,会显示此信息.

<meta property="og:url"         content="http://www.siteurl.com" /> 
<meta property="og:title"       content="My Site" /> 
<meta property="og:image"       content="Site-img.jpg" /> 
<meta property="og:description" content="Description" />
Run Code Online (Sandbox Code Playgroud)

我尝试使用javascript设置元标记,但最终在抓取时实现,Javascript未执行,因此使用javascript修改元标记是没有用的.另一个解决方案是在页面加载之前从后端设置og标记,但是在CDN上托管,没有服务器端支持来做到这一点.

关于如何解决这个问题的想法?

javascript facebook opengraph facebook-graph-api single-page-application

6
推荐指数
0
解决办法
1525
查看次数

在运行时向dojo配置添加包

有没有办法可以为dojo配置添加新包?我知道我可以这样做:在dojo.js加载时添加包.

<script src='dojo_1.7.2/dojo/dojo.js' 
    data-dojo-config="async:true,isDebug:true,parseOnLoad:false,
      packages:[{name:'project1',location:'../../js/proj1'},
        {name:'common',location:'../../common'}]"></script>
Run Code Online (Sandbox Code Playgroud)

我希望能够在运行时添加新包.

dojo.registerModulePathdojo1.6之前完成了这项工作(我认为),但现在已经弃用了1.7

我正在使用dojo 1.7.2.

谢谢.

javascript dojo

5
推荐指数
1
解决办法
3036
查看次数