Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置jQuery UI日期选择器的样式每页不同_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 设置jQuery UI日期选择器的样式每页不同

Javascript 设置jQuery UI日期选择器的样式每页不同,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我在我的网站上使用jQueryUIDatePicker,并希望根据它所在的页面对其进行稍微不同的样式设置。 但是,我有一个小问题,因为包含日历的div没有嵌套到应用.datepicker()函数的元素中。因此,我不能在每页上使用不同的样式。例如 <body> <div id="wrapper">...</div> <div id="datepicker">...</div> </body> ... ... 我知道一个解

我在我的网站上使用jQueryUIDatePicker,并希望根据它所在的页面对其进行稍微不同的样式设置。 但是,我有一个小问题,因为包含日历的div没有嵌套到应用.datepicker()函数的元素中。因此,我不能在每页上使用不同的样式。例如

<body>
<div id="wrapper">...</div>
<div id="datepicker">...</div>
</body>

...
...
我知道一个解决方案是根据页面识别主体,但我并不想这样做,因为我使用的是CMS,目前它向包装器div添加类以确定哪个页面。然而,由于datepicker div出现在包装器之外,我无法适当地设置样式

是将datepicker配置为在特定div中创建日历div的一种方法,还是必须对主体进行标识

谢谢

您可以使用jquery向#日期选择器添加一个类

$("#wrapper.pageClass").nextAll("#datepicker").addClass("someClass");
编辑:

或者可以使用jquery将#datepicker包装成一个div。如果#wrapper只定义了一个类,则以下方法可能有效

var pageClass = $("#wrapper").attr("class");
$("#datepicker").wrap("<div class='" + pageClass + "' />"
var pageClass=$(“#包装器”).attr(“类”);
$(“#日期选择器”).wrap(”

如果我读对了这篇文章,这是漫长的一天,你有一个非常简单的选择,但它确实需要一点额外的加分。给
正文
一个
I
d(每个页面有不同的id):

如果没有其他东西,您可以提供一些额外的语义信息;尽管这可能不像您希望的那么简单

或者,如评论中所述(谢谢),如果您不想在
正文中添加和
id
,您可以使用jQuery实现类似的功能,尽管这取决于您的CMS如何将类应用于
包装器

$(document).ready(
    function() {

        var pageClass = $('#wrapper').attr('class');

        $('#datepicker').addClass(pageClass);
    }
);
然后,希望这能让你像这样瞄准CSS:

#datepicker.pageOneClassName {/* css */}

#datepicker.pageTwoClassName {/* css */}

但很明显,这依赖于CMS采用的连贯、可预测/已知的命名策略。尽管如此,因为这非常接近CMS,我还是支持他的命名策略。尽管我将把它留在原地,因为它提供了一个稍微不同的解决方案。

他的问题是,他试图避免在身体上添加id。不确定是否还有其他w除了用jquery添加类或用特定div包装#datepicker之外,我还可以这么做。@Bryan,+1…我真不敢相信我错过了…哦!Looong day…=/谢谢!反正我更喜欢你的方式。在#datepicker周围包装另一个DOM元素似乎没有必要。你添加类的方式比我的更干净。我不知道为什么我会这么做我没想到要把这个班从#wrapper添加到#datepicker。我猜你不是唯一一个有漫长一天的人…:P
#datepicker.pageOneClassName {/* css */}

#datepicker.pageTwoClassName {/* css */}