BBCode在添加在线jQuery库到页脚时无法工作。

3

第一次使用stackoverflow, 如果表述不清楚请见谅。

我在我的bootstrap页面上实现了bbcode,它的效果符合我的预期,但是当它生效的时候,我的导航栏就不起作用了。

当我添加以下内容时:

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

在我的页脚中,我的导航工作正常,但是我的bbcode却不像预期的那样工作。

如果我注释掉script标签,bbcode就能完美地工作,但是我的导航就不能使用了...

这是我使用的BBcode:

<div class="addChatMessage">

<form action="../code/crud.php?action=addToChat" method="POST" class="form-inline">

<div class="form-group">
   <textarea id="test" name="message" class="form-control"></textarea>                                      
</div>
<button type="submit" class="btn btn-success">Send</button>
</form>

<!-- preview bbcode-->

<br><H5 class="white">Preview</H5>

<div id="preview" class="previewbox col-12"></div>



<!-- load ajax library-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>

<!-- load custom js -->

<script src='bbedit/jquery.bbcode.js' type='text/javascript'></script>


<script type="text/javascript">

$(document).ready(function(){
                  $("#test").bbcode({tag_bold:true,tag_italic:true,tag_underline:true,tag_link:true,tag_image:true,button_image:true});
                  process();
            });

            var bbcode="";
            function process()
            {
                if (bbcode != $("#test").val())
                {
                        bbcode = $("#test").val();
                        $.get('bbedit/bbParser.php',
                        {
                                bbcode: bbcode
                        },
                        function(txt){
                                $("#preview").html(txt);
                                })

                }
                setTimeout("process()", 2000);

            }



        </script>

在预览BBCode中,它应该反映文本区域内的内容,但按照BBCode格式进行格式化。
当我激活jquery 1.11.3.min.js脚本时,这就会崩溃或停止工作。
当注释掉jquery时,导航不起作用,但BBCode完美运行。
对此有任何想法吗?
2个回答

0
这是因为您加载了两次jquery,一次在页脚中(jquery 1.11),一次在代码中。
<!-- load ajax library-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>

我建议你删除上面的代码,只添加适当的jQuery版本到你的BBCode中。检查BBCode是否能使用jQuery 1.11或者让你的导航可以使用jQuery 1.3.2


这是两个不同的库。移除ajax库并没有起作用,只会导致bb停止工作,而导航可以正常工作。 - André Lange

0

我遇到了一个问题。 问题是你正在使用两个不同的jQuery库,所以它们之间产生了冲突。为了解决这个问题,你需要使用jQuery.noConflict(); 所以你的代码应该像这样。试试这个方法,然后告诉我,我还有其他想法。

    <div class="addChatMessage">

<form action="../code/crud.php?action=addToChat" method="POST" class="form-inline">

<div class="form-group">
   <textarea id="test" name="message" class="form-control"></textarea>                                      
</div>
<button type="submit" class="btn btn-success">Send</button>
</form>

<!-- preview bbcode-->

<br><H5 class="white">Preview</H5>

<div id="preview" class="previewbox col-12"></div>



<!-- load ajax library-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script>

<!-- load custom js -->
<script type="text/javascript">
      var $ = jQuery.noConflict();
</script>
<script src='bbedit/jquery.bbcode.js' type='text/javascript'></script>


<script type="text/javascript">

$(document).ready(function(){
                  $("#test").bbcode({tag_bold:true,tag_italic:true,tag_underline:true,tag_link:true,tag_image:true,button_image:true});
                  process();
            });

            var bbcode="";
            function process()
            {
                if (bbcode != $("#test").val())
                {
                        bbcode = $("#test").val();
                        $.get('bbedit/bbParser.php',
                        {
                                bbcode: bbcode
                        },
                        function(txt){
                                $("#preview").html(txt);
                                })

                }
                setTimeout("process()", 2000);

            }



        </script>

似乎添加变量 $ = jQuery.noConflict(); 无效。 - André Lange
我已经更新了我的答案,它应该可以工作...如果还是不行,您可以提供您的网站URL,这样我就可以检查一下。 - Bhavin Solanki
仍然无法正常工作。该项目是本地的,但您可以在此处查看文件:https://drive.google.com/folderview?id=0Bzj0YNxHItmuSjhvR3lqMXNLbXM&usp=sharing 代码位于页面下方,页脚位于包含文件夹中。bbcode用于索引页面。 - André Lange

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接