我在网站的许多区域使用fancybox-2.0.1并且一直这样做没有问题。我也一直使用tinquce的jquery实现和fancybox没有问题。但是,由于我将tinymce inti脚本更改为如下所示,我开始遇到问题:
<script type="text/javascript" src="tinymceJQ/jscripts/tiny_mce/jquery.tinymce.js"></script>
<script type="text/javascript">
$(function() {
var $editor = $("#appContentTextArea");
// Initialize WYSIWYG
$editor.tinymce({
script_url : 'tinymceJQ/jscripts/tiny_mce/tiny_mce.js',
theme : "advanced",
mode : modeAlter,
/*editor_selector : "mceEditor",*/
content_css : "css/webPage.css",
paste_text_sticky: true,
paste_text_sticky_default: true,
relative_urls: false,
remove_script_host : false,
remember_last_path : false,
imagemanager_rootpath: accountFolder,
theme_advanced_buttons1 : "bold, italic, underline, strikethrough, separator, justifyleft, justifycenter, justifyright, justifyfull, separator, formatselect, forecolor, separator, hr, removeformat, separator, cut, copy, image, separator, aquaHeading, sponsorDiv",
theme_advanced_buttons2: "code, separator, link, unlinkbullist,numlist,tablecontrols, fontselect",
theme_advanced_buttons3: "",
setup : function(ed) {
ed.onInit.add(function() {
// do something
});
},
oninit : tinyMceReady
});
</script>
一旦我更改为此初始化,Fancybox将不再打开该URL。相反,它会启动正确大小的弹出窗口,但内容将是“无法加载请求的内容。请稍后再试。”
是否有人意识到与新的fancybox和tinymce存在冲突,或者上述代码中是否存在冲突?
提前感谢任何可以提供帮助的人。
答案 0 :(得分:3)
许多JavaScript库使用$作为函数或变量名,就像jQuery一样。在jQuery的情况下,$只是jQuery的别名,因此所有功能都可以在不使用$的情况下使用。如果我们需要在jQuery旁边使用另一个JavaScript库,我们可以通过调用$ .noConflict()将$的控制权返回给另一个库:
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
// Code that uses other library's $ can follow here.
</script>
这种技术与.ready()方法对jQuery对象进行别名的能力特别有效,因为在传递给.ready()的回调中,如果我们愿意,我们可以使用$而不用担心以后的冲突:
<script type="text/javascript" src="other_lib.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$.noConflict();
jQuery(document).ready(function($) {
// Code that uses jQuery's $ can follow here.
});
// Code that uses other library's $ can follow here.
</script>
如果有必要,我们可以通过将true作为参数传递给方法来释放jQuery名称。这很少是必要的,如果我们必须这样做(例如,如果我们需要在同一页面上使用多个版本的jQuery库),我们需要考虑大多数插件都依赖于jQuery变量的存在和在这种情况下可能无法正常运作。