我试图做同样的事情,Shopify的“处理”对字符串,但与jQuery。jQuery:将字符串转换为类似于Shopify的Handleize的“句柄”
https://docs.shopify.com/themes/liquid-documentation/filters/string-filters#handle
基本上我想任何字符串转换为把手,所以
你好,我的名字是克里。
将成为
你好,我的名,是-科瑞
使用jQuery的功能。
我试图做同样的事情,Shopify的“处理”对字符串,但与jQuery。jQuery:将字符串转换为类似于Shopify的Handleize的“句柄”
https://docs.shopify.com/themes/liquid-documentation/filters/string-filters#handle
基本上我想任何字符串转换为把手,所以
你好,我的名字是克里。
将成为
你好,我的名,是-科瑞
使用jQuery的功能。
嗯,真的,你会这样做正则表达式和字符串替换,而不是jQuery。
var name = "Hello, my name is Corey.";
name = name.toLowerCase().replace(/ /g,'-');
,你在文本输入型我做了一个小的jQuery扩展slugify串并输出结果:
jquery.slug.js:
jQuery.fn.slug = function(options) {
var defaults = {
events: 'keypress keyup blur',
targets: ['#slug', '#hidden']
};
var opts = jQuery.extend(defaults, options);
jQuery(this).on(opts.events, function(){
var slug = $(this).val().toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/-$/, '').replace(/^-/, '');
jQuery.each(opts.targets, function(index, element) {
$(element).val(slug); // input or textarea
$(element).html(slug); // other dom elements
});
});
};
用法:
$('input[name="some-text-input"]').slug({targets: ['#some-id', 'input[name="some-name"]']});