增加对指定标签的属性进行翻译
这里可以增加对指定html标签的某个或某些属性进行翻译。比如element、vue 等框架,有些自定义的标签属性,想让其也正常翻译,可以将其自由加入进来。
方式如:
translate.element.tagAttribute['input']=['value'];
第一个是tag,第二个是tag的属性。上面这个示例是要翻译 input 的 value 属性。
另外比如要翻译 input 的 value 、 data-value 这两个属性,那么如下:
translate.element.tagAttribute['input']=['value','data-value'];
有几个要翻译的属性,就写上几个。
同样,有几个要额外翻译的tag,就加上几行就行了。比如还要翻译 img 标签的 data-value 属性:
translate.element.tagAttribute['input']=['value','data-value'];
translate.element.tagAttribute['img']=['data-value'];
扩展用法
比如,我只想对 加了 disabled 属性的 input 标签的 value 进行翻译 ,比如:
<input value="你好" disabled>
那么设置如下:
translate.element.tagAttribute['input']={
attribute:['value','data-value'],
condition:function(element){
if(typeof(element.disabled) != 'undefined' && element.disabled == true){
return true;
}else{
return false;
}
}
};
其中, condition 便是条件判断,只有当返回的布尔值是true时,才会对上面设置的 attribute 进行翻译,否则并不会对当前设定标签的 attribute 进行任何翻译操作。
function 方法接收的 element 是当前扫描到要进行判断的元素
比如这里是 translate.element.tagAttribute[‘input’] 那这个 element 参数便是扫描到的具体的 input 元素
可以针对 element 这个当前元素本身来进行判定,来决定是否进行翻译。
如果返回 false,则不对 attribute中设置的 [‘value’,’data-value’] 这两个input 的属性的值进行任何操作
注意
- 这行要加在
translate.execute();
前面 - 需要 translate.js v3.17.9.20250729 及以上版本才支持此设置