-3

我正在尝试做一个简单的提示。当我在 jfiddle 中运行它时,它工作得非常好——但托管在我自己的计算机/站点上,它根本不起作用。我一定错过了一些简单的东西。请看一看:

脚本.js:

$(document).ready(function() {
    //$('audio').mouseenter(function() {
    //  $(this).fadeOut('slow');
    //});
    function yesnodialog(button1, button2, element){
        var btns = {};
        btns[button1] = function(){ 
            $(this).dialog("close");
        };
        btns[button2] = function(){ 
            $('.level2').hide();
            $(this).dialog("close");
        };
        $("<div id='box'>Are you a <u>level 1</u>, or a <u>level 2</u> agent?</div>").dialog({
            autoOpen: true,
            title: "",
            modal:true,
            buttons:btns
        });
    }

    yesnodialog('Level 2', 'Level 1', $('.level2'));

它在 jfiddle 中运行:http: //jsfiddle.net/CdwB9/421/ 它看起来对我来说完全没问题

但是,在我自己的网站上,它看起来像这样:

http://i.imgur.com/gV3mQHr.png

有谁知道为什么?

4

1 回答 1

0

您的问题显然与 javascript 无关。它被正确加载,并应用了带有标记、按钮和功能等的 jQuery-ui 魔法。

此错误的原因必须是您是:

  1. 不加载 jQuery-ui 主题 css 文件。检查这是否已加载。如果你从官方网站下载了 jQuery-ui,它应该在 .zip 文件夹中。
  2. 您正在用自己的方式覆盖 jQuery-ui CSS。这不太可能,因为 jQuery-ui 标记具有非常独特的类名和相当复杂的样式(这意味着您将拥有 MUCH CSS 能够覆盖所有这些)。

我 99% 确定这是第一个建议,但你应该检查它们。

检查这一点的最简单方法是使用 Firefox 和 Firebug(或 Chrome/Safari/Opera 中的内置开发者工具)并检查弹出元素以查看是否有任何样式应用于标记。

PS:欢迎来到SO :)

于 2013-04-28T01:57:37.087 回答