Main.php
<script>
$.ajax({
type: 'GET',
url: 'ajax.php',
context: document.body,
success: function(data) {
$("#content").html(data);
}
});
</script>
<div id="content"></div>
ajax.php
<script src="http://tinymce.cachefly.net/4.0/tinymce.min.js"></script>
<script>
$(function(){
tinymce.init({selector:'textarea'});
alert("script executed");
});
</script>
<textarea>Your content here.</textarea>
主页面将ajax页面加载到“content”容器中。 ajax页面包含文本区域字段,这些字段将由tinyMCE插件填充。
当在现代浏览器上测试时,一切都很正常。 但是,在像IE 8、9、10和Firefox 19这样的旧浏览器上,我会收到错误消息,指出“未定义'tinymce'”。但是,如果从同一服务器加载tinymce.min.js,则一切都正常。
似乎旧的浏览器不会加载跨域脚本。 但是,当我进一步测试时,我发现这是由于浏览器在加载tinymce.min.js之前执行内联脚本造成的。
那么,我如何使内联脚本在所有脚本加载完后最后执行?或者,是否有其他方法可以使其正常工作?
谢谢。