javascript - 如何使用 Jquery 和 Django 更改样式表

标签 javascript jquery html css django

您好,我已经尝试解决这个问题很长一段时间了。当我使用 vanilla html 时,这段代码似乎可以工作。 (从平铺 View 更改为 ListView )。现在我已经将它合并到django中并且hrefs包含静态标签,我不知道如何在jquery中引用它并更改它的href。请帮忙

HTML

<link rel="stylesheet" type="text/css" href="{% static "Stylesheets/tileVersion.css"  %}">

我想把它改成这个css href

<link rel="stylesheet" href="../Stylesheets/listVersion.css">

JQUERY

$('#listicon').click(function () {
        $('link[href="static/Stylesheets/tileVersion.css"]').attr('href', 'static/Stylesheets/listVersion.css');
    });
    $('#tilesicon').click(function () {
        $('link[href="static/Stylesheets/listVersion.css"]').attr('href', 'static/Stylesheets/tileVersion.css');
    });

如果可能的话,我希望能够在它们之间切换。任何形式的帮助将不胜感激

最佳答案

您可以执行以下两件事之一。

  1. 您可以使用静态引用将一个 CSS 文件加载到另一个 CSS 文件上,方法是在代码中使用 if 标记从变量或数据源获取 css 链接值(地址/url)。这会在服务器时间进行编译。这也意味着运行时只加载一个 css。这对于客户端来说是静态的。例如:

  2. 与 #1 相同,但您可以使用内联 if 来确定哪一个转发给客户端。

  3. 最后,确保两个 css 文件都保存在静态进程中,并维护您的 jquery: $('#listicon').click(function () { $('link[href="{% static/path/to/first/css/page %}"]').attr('href', '{% static/path/to/first/css/page %} '); }); $('#tilesicon').click(function () { $('link[href="{% static/path/to/second/css/page %}"]').attr('href', {% static/path/to/second/css/page %}) ; }); 这是我凭内存打出来的,所以请耐心等待。 希望这会有所帮助。

关于javascript - 如何使用 Jquery 和 Django 更改样式表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43007729/

相关文章:

html - Web 浏览器的语义屏幕截图

css - 为什么 IE7 不能正确呈现这个绝对定位的元素?

JavaScript 和 <选项>

javascript - 仅当我以另一种方式更改对象时,下划线才会起作用

javascript - 打包的 AWS Lambda 函数中的 "required is not defined"

javascript - 如何通过单击链接在两个 html 页面之间切换

javascript - 随时间改变div的背景颜色

Javascript:防止鼠标单击事件移动光标(防止它改变选择)

javascript - 通过 AJAX 调用获取 PHP 变量到 jquery 脚本文件

javascript - 使用 PHP 和 MySQL 的服务器端事件