如何使用document.execCommand
將字體大小更改爲30像素(例如)?document.execCommand()FontSize以像素爲單位?
此:
document.execCommand("fontSize", false, "30px");
不起作用,因爲在功能的execCommand的第三個參數,只允許我輸入之間的值,其中1至7
如何使用document.execCommand
將字體大小更改爲30像素(例如)?document.execCommand()FontSize以像素爲單位?
此:
document.execCommand("fontSize", false, "30px");
不起作用,因爲在功能的execCommand的第三個參數,只允許我輸入之間的值,其中1至7
它的限制FontSize
命令。還有我能想到的各種選項:
document.execCommand("fontSize", false, "7");
,然後查找命令創建的元素並根據需要更改它們。請參閱示例:http://jsfiddle.net/S3ctN/。這顯然取決於在文檔中沒有其他大小爲7的<font>
元素,並且它也依賴於使用<font>
元素的瀏覽器來顯示字體大小,這看起來好像都是這樣。作爲第二個答案建議在execcommand後運行一些jquery,並用自己的替換標記。
只需用元素替換elem並用所需的值編輯字體大小即可。
jQuery("font[size]", elem).removeAttr("size").css("font-size", "10px");
功能
var execFontSize = function (size, unit) {
var spanString = $('<span/>', {
'text': document.getSelection()
}).css('font-size', size + unit).prop('outerHTML');
document.execCommand('insertHTML', false, spanString);
};
執行
execFontSize(30, 'px');
這工作在Mozilla Firefox,但不工作在ie – 2017-09-18 23:40:10
是。第二個答案是好主意! http://pastebin.com/6r4pkmNV – bordeux 2011-05-03 15:17:14