我尝试搜索,但没有找到任何有用的东西:(
我有一个可拖动的 div,我可以在其中拖动图像/标签和文本字段。为了在一个新的 div 中预览 div 的内容(不要问我为什么大声笑),我创建了一个名为“preview”的函数:
var myDraggableDiv = $('#div_draggable');
function preview()
{
var div = document.createElement('div');
div.id = 'div_preview';
$(div).html(myDraggableDiv.html()); // copy html
}
所以,执行完函数后,我的预览 div 和可拖动 div 的内容是一样的。现在我需要在预览 div 中执行自定义 javascript。自定义 javascript 代码位于名为“customJS”的变量中。更新后的功能是:
function preview()
{
var div = document.createElement('div');
div.id = 'div_preview';
$(div).html(myDraggableDiv.html());
eval(customJS);
}
主要问题是自定义 javascript 是全局执行的,也会影响可拖动的 div。我需要仅在预览 div 的元素内执行此自定义 javascript,很可能使用“eval”。
假设我的自定义脚本是:
var customJS = "$('img').hide();";
如果我运行 eval(customJS),两个 div 中的所有图像都将隐藏。注意我的customJS变量中可以有任何有效的javascript代码......
有谁能够帮助我?如何将自定义脚本的执行限制为特定元素?
谢谢!