Jquery 访问DOM元素属性以设置全局变量
我使用的是CKEditor,我通过如下方式设置名为CKEditor\U BASEPATH的全局变量来设置编辑器的基本路径:Jquery 访问DOM元素属性以设置全局变量,jquery,ckeditor,Jquery,Ckeditor,我使用的是CKEditor,我通过如下方式设置名为CKEditor\U BASEPATH的全局变量来设置编辑器的基本路径: var CKEDITOR_BASEPATH = $('#ckeditor').data('basepath'); 现在我的问题是,以这种方式访问DOM元素的data-dash属性安全吗?我这样做是因为我试图避免在脚本文件中硬编码我的URL,并且我不能将其放入jquery ready函数中,因为CKEditor要求它应该是一个全局变量。我所在的地区目前正在运行,但我不确定这
var CKEDITOR_BASEPATH = $('#ckeditor').data('basepath');
现在我的问题是,以这种方式访问DOM元素的data-dash属性安全吗?我这样做是因为我试图避免在脚本文件中硬编码我的URL,并且我不能将其放入jquery ready函数中,因为CKEditor要求它应该是一个全局变量。我所在的地区目前正在运行,但我不确定这是否会在以后引起问题。您的方法有风险,因为它假定:
id=“ckeditor”
的元素CKEditor\u BASEPATH
变量<element id="ckeditor" data-basepath="there/is/your/path" />
…由于它在模板中呈现的方式大致如下(假设为PHP):
”;
…问题就解决了
我这样做是因为我试图避免硬编码我的URL
这种方法没有硬编码。事情的顺序没有问题。不再担心DOM
p.S.:您遇到的问题已在官方文件中描述。由于我没有在dom就绪函数中操作,我想知道我正在访问的dom元素是否已经可以访问。
<element id="ckeditor" data-basepath="<?php echo $path ?>" />
<script type="text/javascript">
var CKEDITOR_BASEPATH = '<?php echo $path ?>';
</script>