なぜfloatingboxプラグインが私のページの右下にdivコンテナを配置できなかったのかといつも思っていました。 http://www.phpletter.com/Demo/Jquery-Floating-Box-Plugin/ 今日、firebugで自分のサイトをチェックしたところ、次のエラーが見つかりました。
$( "#thediv")。floatingは関数ではありません
オンライン:$( "#thediv")。floating({targetX: "right"、targetY: "bottom"});
コードは次のとおりです。
<script type="text/javascript" src="/js/jquery.js"></script>
<script type="text/javascript" src="/js/jquery.floatingbox.js"></script>
<script type="text/javascript">
jQuery.noConflict();
jQuery(document).ready(
function(){
jQuery("#thediv").floating({targetX:"right", targetY:"bottom"});
}
);
</script>
フローティング関数は、プラグインで次のように作成されます。
jQuery.fn.floating = function(options)
{
return jQuery(this).each(
function(i)
{
var nextIndex = 0;
for(var index in funcFloating)
{
nextIndex = parseInt(index);
}
funcFloating[nextIndex + 1] = {};
funcFloating[nextIndex + 1].box = this;
funcFloating[nextIndex + 1].obj = new floatingBox(this, options, (nextIndex + 1));
funcFloating[nextIndex + 1].func = function(){ funcFloating[nextIndex + 1].obj.doFloat(); };
if (document.layers)
{
funcFloating[nextIndex + 1].obj.init();
}else
{
funcFloating[nextIndex + 1].obj.init();
funcFloating[nextIndex + 1].obj.initSecondary();
}
}
);
};
これを修正するにはどうすればよいですか?プラグインのサンプルページでソースコードを見ると、自分のページと同じコードが使用されていることがわかります。
これがある種の競合エラーである場合、(「$(ドキュメント)」内の)「$」を最初に使用すると、すでにエラーが発生していませんか?