The plugins site is currently in development.
We've been looking to provide a higher-quality, spam-free experience at the plugins site for some time, and a major error on our part forced us to shut down the current site before we could put the new one in place. We are developing a new site, and you can follow along with its development on GitHub. For more information about this transition, including steps you can take as a plugin author to prepare, please read our post about what's going on.
AjaxFilter
This plugin requires jQuery +1.3. that includes 1.3 beta releases (already out)
This tiny plugin provides a registry for different filter functions to sanitize ajax responses.
If you want to provide a new implementation, you need to do something like this:
jQuery.ajaxFilter.register( 'js_in_href', 'html', function( data ){
return data.replace(/href="javascript:[^"]+"/g, '');
});or
jQuery.ajaxFilter.register('eval', 'script html json', function( data ){
return data.replace(/eval\(.+?\);?/g, '');
});Arguments for jQuery.ajaxFilter.register() are:
- Name for the filter, used as 'filter' when calling jQuery.ajax.
- One or more dataTypes to handle. Can be any combination of ajax, html, json and xml separated by spaces.
- The filter function. Will receive 2 arguments: the data and the type. The 'this' will reference the settings object.
To use it, you do:
jQuery.ajax({
url:'foo.html',
filter:'js_in_href',
// ...
});The filter can also parse the response.
That means it can (for example) provide an alternative way of eval'ing json. This is specially useful for Adobe AIR apps.
If the filter returns something else than a string, it's assumed to be the final response.
