我想在我的tumblr主题中使用Jquery脚本,但它不起作用。
这是我的代码:
<html>
<head>
</head>
<body>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://static.tumblr.com/wgijwsy/jgemkyt9x/jquery.photoset-grid.min.js"></script>
<script>
$('.photoset-grid').photosetGrid();
</script>
{Block:Posts}
{block:Photoset}
<div class="photoset">
<div class="photoset-grid" data-layout="{PhotosetLayout}">
{block:Photos}
<img src="{PhotoURL-500}" {block:Caption}alt="{Caption}"{/block:Caption} />
{/block:Photos}
</div>
{block:Caption}
{Caption}
{/block:Caption}
</div>
{/block:Photoset}
{/Block:Posts}
</body>
</html>
它基本上是从此网站复制粘贴的:http://buildthemes.tumblr.com/post/47574959793/responsive-tumblr-photosets-with-jquery-photoset-grid
但它不起作用,我觉得脚本似乎没有加载。也许我把这些脚本标签放在错误的地方?
答案 0 :(得分:1)
只是为了扩展查理所说的内容(因为你说你是初学者)。
您现在编写的方式,您的代码说:“查找具有photoset-grid
类的所有元素,并使用它们执行photosetGrid()
函数。”麻烦的是,当这行代码运行时,浏览器不会知道<{1}}类的任何元素的 - 实际上,它不知道任何正文元素,因为浏览器在阅读页面时还没有找到它们。
(但是,您的代码不会出错,因为它说“对所有 photoset-grid
元素执行此操作” - 即使有不是该类型的任何元素,因为它仍然可以对它们的所有零点执行操作。)
相反,请使用以下内容替换最终.photoset-grid
个标记集之间的内容:
<script></script>
这说的是:“一旦您加载了页面结构并设置了DOM (Document Object Model),就会找到所有$(document).ready(function() {
$('.photoset-grid').photosetGrid();
});
元素并使用它们执行.photoset-grid
功能。“