我正在开发一个c#应用程序。我们使用xsl将xml内容转换为html。文件转换为HTML后。我想通过克隆1 2和3来改变字体大小。因此,如果用户点击1字体大小为9pt,则在2 11pt和3上它应该是13pt。我可以用javascript做到这一点吗?是否可以在xsl中添加javascript函数,以便在将文件转换为html时它具有javascript功能? 如果您回答这个问题,请尝试完整解释。提前谢谢。
答案 0 :(得分:0)
假设您将内容呈现为某种容器(例如跨度),您应该可以执行以下操作:
修改强>:
如果用户能够选择下拉列表的大小或其他内容,请将选项值设置为以磅为单位的实际大小。
changeFontSize = function(size){
var el = document.getElementById("container");
if (el){
el.style.fontSize = size + "pt";
}
}
答案 1 :(得分:0)
答案 2 :(得分:0)
首先,理论上是的,这是可能的。但是,你需要首先确保一些事情。
这个过程很简单。您可以创建一个更改body元素字体大小的函数。因为所有其他是相对的,这将影响每个元素。 (例如,将正文字体设置为12px会使任何设置为150%的内容为18px)。
执行此操作的简单功能可能是这样的:
function changeFont(sizeInPixels)
{
document.body.style.fontSize = sizeInPixels + "px";
}
然后只需将函数作为事件添加到具有适当参数的按钮/链接中。
答案 3 :(得分:0)
您需要在CDATA中插入JavaScript。否则它只是编写改变身体fontSize
样式大小的锚点。
<![CDATA[
<script>
window.onload = function() {
var fontchange = document.createElement("div");
var fontchangelink = function(fontsize, desc) {
var a = document.createElement('a');
a.href="#";
a.style.margin = "5px";
a.onclick = function() {
document.body.style.fontSize = fontsize + 'pt';
};
a.innerHTML = desc;
return a;
};
fontchange.appendChild(document.createTextNode("Change font size:"));
fontchange.appendChild(fontchangelink(9, "1"));
fontchange.appendChild(fontchangelink(11, "2"));
fontchange.appendChild(fontchangelink(13, "3"));
document.body.insertBefore(fontchange, document.body.childNodes[0]);
};
</script>
]]>
你可以更好地设计它,但它的外观如下: