JQuery 在 JS fiddle 中可以工作,但不能在我的网站上工作?

标签 jquery class selector jsfiddle

好吧,正在发生一些非常令人沮丧和奇怪的事情。我的服务器上安装了 JQuery,并且我知道它已正确导入,因为当我运行一个简单的...

$(function() { alert('hello') });

它会发出“你好”警报。但是,当我尝试使用 css 选择器时...

$(".image").css("border","3px solid red");

这不起作用!是的,我 100% 确定文件中存在具有该类名的内容。这是真正的亮点,当我将代码复制粘贴到 jsFiddle 中时,它工作得很好。是什么赋予了?!

最佳答案

您的 jsFiddle 设置为 onload在 jsFiddle 窗口的左上角。如果将其设置为“No Wrap - in Head”,则会模拟 <head> 中的代码标签,那么你的 jsFiddle 就不再工作了。

onload设置意味着 jsFiddle 在页面加载之前不会运行您的 javascript。

在您的真实页面中,您可能在页面加载之前就运行了 javascript。

您可以通过将 JavaScript 放入其自己的 .ready() 来解决此问题功能:

$(document).ready(function(){
    $(".image").css("border","3px solid red");
});
<小时/>

或者,您可以确保 javascript 直到 </body> 之前才加载/运行。标记,这是确保在脚本运行之前加载页面内容的简单方法。

<body>
Your HTML content here

<script>
// your script here that runs after all of the DOM is parsed
$(".image").css("border","3px solid red");
</script>

</body>

参见this answer有关放置 <script> 的更多详细信息适当标记。

关于JQuery 在 JS fiddle 中可以工作,但不能在我的网站上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17417326/

相关文章:

jquery - Jcrop 加载后压缩图像,应用错误的宽度

html - 带悬停的 CSS 兄弟选择器

swift - 使用按钮创建警报的自定义类。如何添加完成处理程序?

javascript - 为什么这个 jQuery 在 Codeigniter 中不起作用?

javascript - Ipad - 我的 Webview/UIkit safari 浏览器无法运行 javascript

jquery - 在 jQuery 中测试下一个元素

c++ - 以类对象和结构对象 c++ 开始线程

java - 我们可以直接实例化一个抽象类吗?

java - 扫描仪再次出现问题

ios - ARC - 实例消息未声明带有选择器的方法