标签归档:jquery

RSS feed of jquery

pyquery:一个类似于jquery的Python库

pyquery:一个类似于jquery的Python库

pyquery可以使你在xml文档上做jquery查询,它的API尽可能地类似于jquery。pyquery使用lxml执行快速的xml和html操作。

这并非(至少目前还不是)一个生成javascript代码或者与javascript代码做交互的库。pyquery的作者只是由于非常喜欢jquery的API因而将其用python实现。

该项目目前托管在Github仓库中并且处于活跃开发状态。作者可以为任何想要贡献源码的开发者赋予push权限,并且会对其做的变更做回顾。如果你想要贡献源码,可以发Email给项目作者。

项目的Bug可以通过Github Issue Tracker进行提交。

快速入门

你可以使用PyQuery类从一个字符串,一个lxml文档,一个文件或者一个url钟载入一个xml文档:

>>> from pyquery import PyQuery as pq
>>> from lxml import etree
>>> import urllib
>>> d = pq("<html></html>")
>>> d = pq(etree.fromstring("<html></html>"))
>>> d = pq(url=your_url)
>>> d = pq(url=your_url, ...

继续阅读

jQuery遮罩插件jQuery.blockUI.js简介

jQuery BlockUI Plugin概述:

jQuery BlockUI插件可以在不锁定浏览器的同时,模拟同步模式下发起Ajax请求的行为。该插件激活时,会阻止用户在页面进行的操作,直到插件被关闭。BlockUI通过向DOM中添加元素实现其外观和组织用户交互的行为。

使用jQuery BlockUI,首先需要添加插件js源码的引用:

<script type="text/javascript" src="https://malsup.github.io/min/jquery.blockUI.min.js"></script>

用法很简单,阻止用户对页面的交互:

$.blockUI();

使用自定义信息阻塞UI:

$.blockUI({ message: '<h1><img src="busy.gif" .> Just a moment...</h1>' });

使用自定义样式阻塞UI:

$.blockUI({ css: { backgroundColor: '#f00'; color: '#fff' } });

解除对页面的遮罩:

$.unblockUI();

如果你想要使用缺省设置对所有的ajax请求都使用UI遮罩,只需添加下面的语句即可:

$(document).ajaxStart($.blockUI).ajaxStop($.unblockUI);

页面遮罩示例:

下面演示了几种阻塞页面的方式,点击下面的按钮激活blockUI

上例使用了下面的代码:

<script ...

继续阅读

CKEditor允许输入空标签配置方法

使用CKEditor编辑HTML文本时,有时可能需要插入带有样式的空标签,例如显示glyphicons图标的<i>标签:

<i class="glyphicon glyphicon-user"></i>

但是,默认设置下,CKEditor会过滤掉空的<i>标签。

在ckeditor.config.js中添加如下代码即可实现在CKEditor (4.3.x)编辑器中插入一个带有样式的空的<i>标签:

// allow i tags to be empty (for font awesome)
config.protectedSource.push(/<i[^>]><\/i>/g);
CKEDITOR.dtd.$removeEmpty['i'] = false;
config.allowedContent = true;

参考博文:Configure CKEditor to allow entering empty tags


原文步骤摘录如下:

The (empty) <i> tag kept on being removed ...

继续阅读

jQuery事件重复绑定示例及解决方法

jQuery嵌套事件绑定时,如果逻辑处理不当,有时会出现事件重复绑定的问题,例如下面的例子。

点击“添加文本框”按钮时,会在div中新增一个textarea,同时使用bind方法为class为demo-textarea的元素绑定click事件

jQuery事件重复绑定Demo,点击“新增文本框”按钮追加textarea
点击textarea弹出提示,重复添加时会重复绑定
第n次新增之后,textarea在点击时会重复弹出n次提示。

相关代码如下所示:

<script>
$(document).ready(function(){
  $("#add-btn").on("click",function(){
    $("#first-p").after('<p id="demo-p"><textarea class="demo-textarea">点击textarea弹出提示</textarea></p>');
    $("#demo-div").find(".demo-textarea").bind("click",function(){
      alert("Textarea Clicked!"); ...

继续阅读

jQuery Raty星级评分插件使用方法

使用jQuery Raty,可以很方便的在页面上嵌入一个评分组件,如下所示:

使用方法很简单,首先从https://github.com/wbotelhos/raty下载raty的源代码(依赖于jquery)

然后在页面中引入相应的js文件、css文件、图片资源,在需要添加评分组件的元素上(比如span标签)添加下面的jquery代码即可:

$('span').raty();

以上为jQuery Raty的缺省使用方法,此外,该组件还支持丰富的传入参数和回调函数,例如:

设置jQuery Raty的初始评分:

评分回调函数

如果需要根据后台动态设置初始评分,可以使用回调函数实现。例如使用div中的data-attribute属性:

继续阅读