Javascript 如何运行jQuery插件上定义的函数?
我在网上搜索了三天,想找到一个解决我这个简单问题的方法。 我尝试在外部Javascript 如何运行jQuery插件上定义的函数?,javascript,jquery,function,jquery-plugins,Javascript,Jquery,Function,Jquery Plugins,我在网上搜索了三天,想找到一个解决我这个简单问题的方法。 我尝试在外部 我试过这样的方法: 编辑:整个脚本: <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <link rel="stylesheet" href="css/galleriffic-2.css" type="text/css" /> <sc
我试过这样的方法:
编辑:整个脚本:
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="css/galleriffic-2.css" type="text/css" />
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.galleriffic.js"></script>
<script type="text/javascript" src="js/jquery.opacityrollover.js"></script>
<!-- We only want the thunbnails to display when javascript is disabled -->
<script type="text/javascript">
document.write('<style>.noscript { display: none; }</style>');
</script>
</head>
<body>
<!-- Start Advanced Gallery Html Containers -->
<div id="gallery" class="content">
<div id="controls" class="controls"></div>
<div class="slideshow-container">
<div id="loading" class="loader"></div>
<div id="slideshow" class="slideshow"></div>
</div>
<a id="sstop" href="#">pause</a> <!--here the link-->
<div id="caption" class="caption-container"></div>
</div>
<div id="thumbs" class="navigation">
<ul class="thumbs noscript">
<li>
...
</ul>
</div>
<div style="clear: both;"></div>
<script type="text/javascript">
var galleryswtch=0;
jQuery(document).ready(function($) {
// We only want these styles applied when javascript is enabled
$('div.navigation').css({'width' : '300px', 'float' : 'left'});
//$('div.content').css('display', 'none');
// Initially set opacity on thumbs and add
// additional styling for hover effect on thumbs
var onMouseOutOpacity = 0.67;
$('#thumbs ul.thumbs li').opacityrollover({
mouseOutOpacity: onMouseOutOpacity,
mouseOverOpacity: 1.0,
fadeSpeed: 'fast',
exemptionSelector: '.selected'
});
// Initialize Advanced Galleriffic Gallery
var gallery = $('#thumbs').galleriffic({
delay: 2500,
numThumbs: 3,
preloadAhead: 10,
enableBottomPager: true,
maxPagesToShow: 11,
imageContainerSel: '#slideshow',
controlsContainerSel: '#controls',
captionContainerSel: '#caption',
loadingContainerSel: '#loading',
renderSSControls: true,
renderNavControls: true,
playLinkText: 'Play Slideshow',
pauseLinkText: 'Pause Slideshow',
prevLinkText: '‹ Previous Photo',
nextLinkText: 'Next Photo ›',
nextPageLinkText: 'Next ›',
prevPageLinkText: '‹ Prev',
enableHistory: false,
autoStart: false,
syncTransitions: true,
defaultTransitionDuration: 900,
onSlideChange: function(prevIndex, nextIndex) {
// 'this' refers to the gallery, which is an extension of $('#thumbs')
this.find('ul.thumbs').children()
.eq(prevIndex).fadeTo('fast', onMouseOutOpacity).end()
.eq(nextIndex).fadeTo('fast', 1.0);
},
onPageTransitionOut: function(callback) {
this.animate({opacity: '0'}, 500, 'linear', callback);
},
onPageTransitionIn: function() {
this.animate({opacity: '1'}, 500, 'linear');
}
});
$('#sstop').click(function() {$('#gallery').galleriffic('pause');}); //here the js
});
</script>
</body>
write('.noscript{display:none;}');
-
...
var galleryswtch=0;
jQuery(文档).ready(函数($){
//我们只希望在启用javascript时应用这些样式
$('div.navigation').css({'width':'300px','float':'left'});
//$('div.content').css('display','none');
//最初在拇指上设置不透明度并添加
//拇指悬停效果的附加样式
var onMouseOutOpacity=0.67;
$('u#thumbs ul.thumbs li').opacityrollover({
mouseOutOpacity:onMouseOutOpacity,
鼠标不透明度:1.0,
fadeSpeed:“快”,
ExcemptionSelector:“.已选定”
});
//初始化高级Gallerific库
var gallery=$(“#拇指”).gallerific({
延误:2500,
numThumbs:3,
预测:10,
enableBottomPager:正确,
maxPagesToShow:11,
imageContainerSel:“#幻灯片放映”,
controlsContainerSel:“#controls”,
captionContainerSel:“#caption”,
装载集装箱EL:“#装载”,
渲染器控件:true,
renderNavControls:true,
playLinkText:“播放幻灯片”,
PauseLink文本:“暂停幻灯片放映”,
prevLinkText:“&lsaqo;上一张照片”,
nextLinkText:“下一张照片”,
nextPageLinkText:“下一个&rsaquo;”,
prevPageLinkText:“&lsaqo;Prev”,
enableHistory:错误,
自动启动:错误,
对,,
默认转换持续时间:900,
onSlideChange:函数(prevIndex、nextIndex){
//“this”指的是gallery,它是$(“#thumbs”)的扩展
this.find('ul.thumbs').children()
.eq(prevenindex).fadeTo('fast',onMouseOutOpacity).end()
.eq(nextIndex).fadeTo('fast',1.0);
},
onPageTransitionOut:函数(回调){
动画({opacity:'0'},500,'linear',callback);
},
onPageTransitionIn:函数(){
动画({opacity:'1'},500,'linear');
}
});
$('#sstop')。单击(function(){($('#gallery')。galleriffic('pause');})//这里是js
});
要调用一个没有参数的函数(比如这个),您应该像pause()
那样调用它
yourobjectname.pause();
由于Gallerific是一个作用于DOM元素的jQuery扩展,它应该是:
$(myselector).galleriffic("pause");
其中,myselector
是对已附加图库的任何元素的引用[例如,如果使用与GallerFic示例中相同的元素ID,则为“#拇指”
。]
理想情况下,在JS文件中建立此关联,而不是在HTML中内联进行,方法是首先提供链接和ID:
<a href="#" id="pause_link"> Pause </a>
[基本原理-在现代HTML中,将Javascript内联被视为“旧世界”]为什么
$('#myElement').delay(2000)
不行吗?
还是暂停了未定义的时间
如果是这样的话,只需创建一个新函数并在a.click事件中调用它即可:)下载投票者是否愿意解释一下?AFAIK(我做过很多jQuery编程)这是正确的答案!是的,这肯定是正确的答案。但我该如何准确地写呢?很抱歉,我是一名js学习者。您可以将一个常规的旧javascript变量(比如var gallery)分配给gallery的实例(就像他们在这个gallery的主示例页面上所做的那样)。然后可以访问其暂停方法。不需要使用jquery查找对象。但不是我投了反对票。@Alnitak在过去几天里,我注意到(并成为)一些非常奇怪的反对票的受害者。也许是时候开始一个关于它的meta线程了。@James在这个示例中,你得到的是一个jQuery对象-如果不通过main.galleriffic()发回,你不能调用单个小部件的方法
功能。它是一个图库幻灯片放映小部件-其暂停
方法停止幻灯片放映-它与完全无关。延迟
。
$(document).ready(function() {
// do all of the rest of your galleriffic setup
$('#thumbs').galleriffic(
// initial options
);
// and then link the pause link with the gallery
$('#pause_link').click(function() {
$('#thumbs').galleriffic('pause');
});
});
$('#myElement').delay(2000)