如何使用我自己的所见即所得编辑器插入图像
How to insert images with my own WYSIWYG editor
我正在使用iframe构建我自己的所见即所得编辑器,我想找到一种简单插入图像的方法我已经得到了粗体、斜体、H1和H2,使用JS:
function bold(){
editor.document.execCommand("bold", false, null)
}
function italic(){
editor.document.execCommand("italic", false, null)
}
function h1(){
editor.document.execCommand('formatBlock',false,'h1');
}
function h2(){
editor.document.execCommand('formatBlock',false,'h2');
}
这很有效,但我很难使用"插入图像按钮"由于我对编码真的很陌生,我尝试了这个:
function image(){
var image = prompt ("Paste or type a link", "http://")
editor.document.execCommand("createImage", false, image)
但这行不通。我的意图是让用户有可能从他们的电脑和/或互联网上传图像。请,如果有人知道如何插入图像。。。帮助
非常感谢
您是否尝试使用相对链接格式化图像位置,其中@符号位于图像位置之前。你的代码和解释也没有解释他们是从我的文档这样的位置的机器上传图像,还是严格从http链接上传图像。
要使用Javascript和HTML从本地机器上传,您可以签出此代码。您的问题是在编写自定义Javascript函数时经常出现的问题。
<script type='text/javascript'>
function main()
{
var inputFileToLoad = document.createElement("input");
inputFileToLoad.type = "file";
inputFileToLoad.id = "inputFileToLoad";
document.body.appendChild(inputFileToLoad);
var buttonLoadFile = document.createElement("button");
buttonLoadFile.onclick = loadImageFileAsURL;
buttonLoadFile.textContent = "Load Selected File";
document.body.appendChild(buttonLoadFile);
}
function loadImageFileAsURL()
{
var filesSelected = document.getElementById("inputFileToLoad").files;
if (filesSelected.length > 0)
{
var fileToLoad = filesSelected[0];
if (fileToLoad.type.match("image.*"))
{
var fileReader = new FileReader();
fileReader.onload = function(fileLoadedEvent)
{
var imageLoaded = document.createElement("img");
imageLoaded.src = fileLoadedEvent.target.result;
document.body.appendChild(imageLoaded);
};
fileReader.readAsDataURL(fileToLoad);
}
}
}
main();
</script>
您可以在这里查看关于使用Javascript和HTML5上传图像的完整文章:https://thiscouldbebetter.wordpress.com/2012/12/20/uploading-and-displaying-an-image-from-a-file-using-html5-and-javascript/
它应该是"insertimage"而不是createImage。
function image(){var image = prompt ("Paste or type a link", "http://")editor.document.execCommand("insertimage", false, image)}
您可以使用此后
var insertImgTag = document.createElement("div");
insertImgTag.id = "insertImgTag";
if (document.getSelection().anchorNode != null) {
document.getSelection().getRangeAt(0).insertNode(insertImgTag);}
$("#insertImgTag")
.parent()
.html(
"<img src=/images/" + $("#name").val() + " width='" + imgWidth + "%' alt='" + imgAlt + "'>"
);
根据这篇文章
相关文章:
- 在plone 5中将自定义的灵活性内容类型插入到tinymce编辑器中
- 将HTML模板插入tinymce 4编辑器
- 如何使用我自己的所见即所得编辑器插入图像
- 如何在Wysihtml5沙盒编辑器中的光标位置插入文本
- Javascript:在所见即所得编辑器中的插入符号处粘贴文本
- 如何在 Tinnymce 编辑器的插入链接弹出窗口中添加 rel 属性
- CKEditor:调用编辑器#setData后恢复插入符号位置
- 在 textAngular 编辑器中使用角度引导模式插入链接
- CKEditor只在编辑器中正确插入图像,但在提交后不会在网页上显示图像
- 在Iframe文本编辑器中插入After
- 引导程序wysihtml5编辑器-can't使用JS插入html
- JavaScript将表插入到没有插件的文本编辑器中(不要建议使用插件)
- Atom编辑器:用于插入时间戳的代码段
- 在模态中使用剑道编辑器时,插入只读的超链接弹出窗口
- 如何在wysiwyg编辑器中按需隐藏光标闪烁符(插入符号)?(redector.js)
- 如何在编辑器中插入代码,而不是在客户位置插入代码
- 如何更改富文本编辑器文本区域中的插入符号偏移量
- RichText编辑器插入点位置的按钮状态
- 在tinyMCE富文本编辑器中在光标位置插入文本
- 如何通过文本区或html编辑器插入图像