请问,我想用JS分别定义同一个DIV中的中文和英文样式,如何实现啊?
解决方案 »
- js给SPAN内元素赋值问题
- 这句代码是什么意思啊
- firefox下history.go(-1)不起作用
- var nn6=document.getElementById&&!document.all;
- 关于下拉框获得焦点的问题,急等高手指教
- ◎◎◎求助:左边select往右边select里不能添加相同的数据,怎么实现这个功能?###
- 在JAVASCRIPT中如何通过正则表达验证表单中的文本框信息时间11:03:00
- 关于iframe对象的参数
- netscape4.7
- python+selenium始终获取不到页面的alert弹窗一直报错,求大神帮忙啊
- 如何获取视频文件的第一帧图像,并把它显示在网页上
- 招版主
不过可以实现
将div中的字拿出来,var str=div1.innerText;
然后再判断中英文,分别设置样式
写一个中文的样式,在写一个英文的样式
然后使用cssclass动态更换
不过可以实现
将div中的字拿出来,var str=div1.innerText;
然后再判断中英文,分别设置样式这个可以再写详细点吗?判断是如何写?再怎么分别拿出来?谢谢!!!
下面代码IE测试通过
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>new page</title>
<script>
function setCH_EN_style(str){
//设置中英文样式
var chineseStyleBefore='<font face="隶书" size="4" color=red>';
var chineseStyleAfter='</font>';
var englishStyleBefore='<i><font color=green face="Comic Sans MS">';
var englisheStyleAfter='</font></i>';
var chineseOrEnglish=str.charCodeAt(0)>128?true:false;
var chinese="";
var english="";
var str1="";
for(var i=0;i<str.length;i++){
if(str.charCodeAt(i)>128){
if(chineseOrEnglish){
if(english!="")
str1+=englishStyleBefore+english+englisheStyleAfter;
english="";
}else{
chineseOrEnglish=true;
}
chinese+=str.charAt(i);
}else{
if(!chineseOrEnglish){
if(chinese!="")
str1+=chineseStyleBefore+chinese+chineseStyleAfter;
chinese="";
}else{
chineseOrEnglish=false;
}
english+=str.charAt(i);
}
}
if(chinese!="")
str1+=chineseStyleBefore+chinese+chineseStyleAfter;
if(english!="")
str1+=englishStyleBefore+english+englisheStyleAfter;
return str1;
}
</script>
</head><body>
<div id=div1>中文,english,中文,<font color=blue>english</font>,中文,english</div>
</body>
<script>
var d=document.getElementById("div1");
var str=d.innerHTML;
//去掉html标签
str=str.replace(/<(.*?)>/g,"");
alert("调用函数前!\n"+str);
d.innerHTML=setCH_EN_style(str);
</script>
</html>
你要在JS里动态改,那就直接改 document.getElementById("mm").style.fontFamily="arial, 宋体";
主要 是设置 英文的 class我以前找到过 一个简单的正则 (不懂正则)
再加上点限制 把什么 单引 双引 / 等 再搞一下
函数也很简单找不到了
英文 arial 中文黑体 最后所有的连续的 英文字符串 和 比较特殊的字符 都会
<span class="en">myWords$$^*/</span>
等
效果还不错上面梅花雪说的
---------------------------
直接使用CSS的字体设置特性,font-family:arial, 黑体; 象这样的CSS设置,英文优化使用 arial 定义,而中文就会自动使用“黑体”。
---------------------------
这个 可能跟 文件编码 有关
我在utf_8
当时是不行的(中文会是宋体) 也没试过 gb2312
不知有没有人 仔细研究过