gpt4 book ai didi

javascript - jQuery可在jsFiddle上使用,但不能在实时页面上使用

转载 作者:行者123 更新时间:2023-12-02 23:22:22 26 4
gpt4 key购买 nike

问题

有趣的是,可能有一个简单的解决方案。在@jessegavin的帮助下,我向页面添加了一个jQuery函数,用于控制页面上HTML5音频元素的播放。代码很漂亮,可以在jsFiddle上正常工作,但是放在我页面的上下文中却不能。

我花了很多时间,有条不紊地逐步解决这个问题,试图找出我的错误,但无济于事。真的,我在这方面使用了亚里士多德,并运用了科学方法。请原谅我这个问题。这真的是我的不得已。

THE NITTY GRITTY

这是我的发现:该页面的所有JavaScript函数都可以在jsFiddle的上下文中正常工作。一次专门添加了一个功能之后,我可以说它们每个都正常工作,并且除了HTML5音频回放之外,所有其他功能都可以在jsFiddle和实时页面上运行。也就是说,只有HTML5音频播放在实时页面上不起作用。

所有HTML都经过100%验证,所有CSS都经过100%验证。两组代码都完整地添加到jsFiddle中。

页面标题通过Google的onload命令(外部JavaScript文档)(按此顺序)通过Google的onload命令加载外部CSS文档,jQuery 1.5.1和jQuery UI 1.8.8(与UI相同,但与jsFiddle相同),其中1.8.9。该网站包含所有功能),最后是Google Analytics(分析)功能。

JavaScript包装在文档就绪框架中。

我的猜测是差异出在脑海中某处,但我无法想象到底是什么。所有外部链接均正常运行,这由JavaScript函数正常运行证明(新的音频 Controller 除外)。

开机自检

P.S.-到目前为止仅能在Chrome和Safari中使用。.我托管的两个音频文件所在的服务器没有正确的ht-access文件,将OGG声明为正确的MIME类型。我也会对此提出一个问题。

资源

jsFiddle:http://jsfiddle.net/66FwR/3/

HTML (仅标题,主体位于jsFiddle中)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=utf-8>
<meta name="description" content="Fernando Garibay- Producer, Songwriter, Artist, Multi-Instrumentalist, and Programmer" />
<meta name="keywords" content="Fernando Garibay, Music, Producer, Songwriter, Artist, Mutli-Instrumentalist, Programmer." />
<title>Fernando Garibay - Music</title>
<link rel="icon" type="image/png" href="http://www.fernandogaribay.com/favicon.ico" />
<link href="../styles/fernando.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="https://www.google.com/jsapi?key=ABQIAAAAqfg-jHFfaMB9PWES0K_8ChTCwkclEZER8BG2IP57SKkFV1O9hxSZkzKYPDs-3mbhEluKXjbKUAB7sQ"></script>
<script type="text/javascript">
  google.load("jquery", "1.5.1");
  google.load("jqueryui", "1.8.8");
</script>
<script type="text/javascript" src="../scripts/fernando.js"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
<!--Copyright 2011, Fernando Garibay, Inc-->
<!--Developed by Minimal +-->
</head>
<body onload="message()">

JavaScript (该功能可在jsFiddle上使用,但不适用于实时页面)
 $(function() {
$(".playback").click(function(e) {
e.preventDefault();
var song = $(this).next('audio').get(0);
if (song.paused)
song.play();
else
song.pause();
});
});

最佳答案

我在实时页面上(在Chrome和Firefox中)看到两个JavaScript错误:
Uncaught TypeError: Object [object Object] has no method 'fancybox'Uncaught ReferenceError: message is not defined
您可以在fernando.js中引用fancybox(),并在<body onload="message()">中引用message。这些错误很可能会阻止您的音频控制代码运行。

关于javascript - jQuery可在jsFiddle上使用,但不能在实时页面上使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5711643/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com