在WordPress页面中,在div中,我想将文本从大写转换为混合大写。数据由用户使用小写,大写和混合的表单收集。
CSS不是解决方案,因为2017年CSS无法将大写转换为大写。
我是JS和jQuery的初学者,请耐心等待。
我的脚本&我的div:
<script>
jQuery.fn.capitalise = function() {
return this.each(function() {
var $this = $(this),
text = $this.text(),
split = text.split(" "),
res = [],
i,
len,
component;
for (i = 0, len = split.length; i < len; i++) {
component = split[i];
res.push(component.substring(0, 1).toUpperCase());
res.push(component.substring(1).toLowerCase());
res.push(" "); // put space back in
}
$this.text(res.join(""));
});
};
$(".domecap").capitalise();
</script>
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<div class="domecap">ADDRESS: STR. mihai BRAVU, nUmBER 196</div>
&#13;
答案 0 :(得分:1)
尝试按以下顺序排列html文件,并将$(".domecap").capitalise();
行放在$(document).ready()
函数中:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
jQuery.fn.capitalise = function() {
return this.each(function() {
var $this = $(this),
text = $this.text(),
split = text.split(" "),
res = [],
i,
len,
component;
for (i = 0, len = split.length; i < len; i++) {
component = split[i];
res.push(component.substring(0, 1).toUpperCase());
res.push(component.substring(1).toLowerCase());
res.push(" "); // put space back in
}
$this.text(res.join(""));
});
};
$(document).ready(function() {
$(".domecap").capitalise();
});
</script>
<div class="domecap">ADDRESS: STR. mihai BRAVU, nUmBER 196</div>
答案 1 :(得分:0)
尝试使用这个简单的jQuery语句:
assertThat(actual).containsExactlyInAnyOrder(
"Something-6144-77.pdf"
, "d-6144-77.pdf"
, "something-6144-78.pdf"
, "Something-6144-8068.pdf"
);
这将获取div中的文本,将其转换为大写,然后应用到指定的div。
答案 2 :(得分:0)
您不需要使用jquery来执行此操作。为什么不用CSS和javascript呢?像这样:
var str = document.getElementById('domecap');
var res = str.textContent.toLowerCase();
str.innerHTML = res;
#domecap {
text-transform: capitalize
}
<div class="domecap" id="domecap">ADDRESS: STR. mihai BRAVU, nUmBER 196</div>