所以,如果我有以下内容:
<script type="text/javascript" src="offsite file I am referencing"></script>
Run Code Online (Sandbox Code Playgroud)
我只想延迟使用settimeout调用该文件的执行,我该怎么做呢?
非常奇怪的是,在一个简单的函数上使用settimeout我没有问题,但我在这个看似更简单的情况下有点难过.
我的想法是我可以创建一个在x时间后调用该文件的函数,但调用函数中的文件似乎正在逃避我.
如果我创建了一个amchart,并且在创建中我将其中一个数据集的隐藏值设置为true:
function loadChart(container, chartstodisplay) {
AmCharts.ready(function () {
//Do all my regular chart creation here
//but make sure hidechart shows up hidden
if(key == 'hidechart'){
graphs[key].hidden = true;
}
//now write the chart
chart.write(container);
});
}
Run Code Online (Sandbox Code Playgroud)
现在我在我的页面后面,我有一些与图表等相关联的HTML.例如,我有一个链接,如果你将鼠标悬停在上面,我希望"hidechart"现在可见,请认识到这个功能是与AMcharts创建的图例块完全分开,您可以单击以隐藏/取消隐藏,这在页面html上是单独的.
$(document).ready(function(){
$('#some_parent').on('click','span.unhide',function(){
//now go back to the hidden chart element from above and change
graph['hidechart'].hidden = false;
//obviously that doesn't work
})
})
Run Code Online (Sandbox Code Playgroud)
那么我是否可以触及并影响图表和图表?我该如何处理?
我有以下fancybox代码:
$('.fancybox').fancybox({
'autoScale' : false,
'href' : $('.fancybox').attr('id'),
'type':'iframe',
'padding' : 0,
'closeClick' : false,
//some other callbacks etc
Run Code Online (Sandbox Code Playgroud)
问题是我在页面上有20个不同的A标签id,我希望fancybox href属性获取被点击元素的id,即触发事件的id.
我尝试了几件事,但都没有奏效!
'href' : $(this).attr('id'),
'href' : $(this.element).attr('id'),
Run Code Online (Sandbox Code Playgroud)
这看起来很简单,但任何时候我插入'this'或类似的东西都没有用.
我有以下内容:
error_log("big error!!", 1, my email address);
Run Code Online (Sandbox Code Playgroud)
当消息传递时,它在主题行中显示"PHP error_log message".
有人可以告诉我如何自定义邮件主题吗?
我有以下html:
<ul id="contain">
<li class="active_one"></li>
<li class="two"></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
以下jquery:
$contain = $('#contain'); //going to use a lot
$contain.on('click','li.two', function(){
console.log('working');
//plus do other stuff
});
Run Code Online (Sandbox Code Playgroud)
以上不起作用,但当我将其更改为:
$('body').on('click','li.two', function(){
console.log('working');
//plus do other stuff
});
Run Code Online (Sandbox Code Playgroud)
然后它工作,但我知道最好的做法是尽可能接近我正在尝试使用的父元素,但每次我尝试这样做,我显然做错了,因为我的父级选择器不工作.
我有一个数组:
$example = array();
$example ['one'] = array('first' => 'blue',
'second' => 'red');
$example ['two'] = array('third' => 'purple',
'fourth' => 'green');
$example ['three'] = array('fifth' => 'orange',
'sixth' => 'white');
Run Code Online (Sandbox Code Playgroud)
根据函数的一些输入,我需要在foreach循环处理输出之前更改示例数组的顺序:
switch($type)
case 'a':
//arrange the example array as one, two three
break;
case 'b':
//arrange the example array as two, one, three
break;
case 'c':
//arrange the example array in some other arbitrary manner
break;
foreach($example as $value){
echo $value;
}
Run Code Online (Sandbox Code Playgroud)
如果不重新设计我的所有代码,有没有一种简单的方法可以做到这一点?我有一个非常深入的foreach循环来完成处理,如果有一个简单的方法来简单地重新排序数组,每次真正有用.
我有以下代码:
var $reviewButton = $('span.review_button');
$reviewButton
.live('click',
function(){
$('#add_reviews').show();
}
)
Run Code Online (Sandbox Code Playgroud)
稍后在脚本中,我使用AJAX调用来加载一些内容,另一个$('span.review_button')实例进入图片.我更新了上面的代码以使用'.live',因为click事件不能与AJAX生成的审阅按钮一起使用.
此代码有效,因为.live(click //)事件对静态'span.review_button'和AJAX生成的'span.review_button'都起作用
然而,我看到.live被删除了所以我试图通过切换到'.on'来遵循jquery文档说明但是当我切换到下面的代码时,我遇到了与切换到'.live'之前相同的问题,其中click函数适用于'span.review_button'的原始实例,但不适用于AJAX生成的实例:
var $reviewButton = $('span.review_button');
$reviewButton
.on('click',
function(){
$('#add_reviews').show();
}
)
Run Code Online (Sandbox Code Playgroud)
建议?
我有以下变量:
$argument = 'blue widget';
Run Code Online (Sandbox Code Playgroud)
我通过以下函数传递:
widgets($argument);
Run Code Online (Sandbox Code Playgroud)
小部件函数有两个变量:
$price = '5';
$demand ='low';
Run Code Online (Sandbox Code Playgroud)
我的问题是如何做到以下几点:
$argument = 'blue widget'.$price.' a bunch of other text';
widgets($argument);
//now have function output argument with the $price variable inserted where I wanted.
Run Code Online (Sandbox Code Playgroud)
有什么声音可以做到这一点,还是我需要重新考虑我的设计?
我无法弄清楚如何将一些额外的内容放入我用fancybox显示的iframe中.
我的基本设置:
$('.fancybox').fancybox({
'autoScale': false,
'transitionIn': 'none',
'transitionOut': 'none',
'type': 'iframe',
'padding': 0,
'closeClick': false,
helpers: {
overlay: {
closeClick: false
}
}
<a class="fancybox" href ="http://my-iframe.example"/><img src="myimage.jpg" width="x" height="y" /></a>
Run Code Online (Sandbox Code Playgroud)
所以我需要在iframe下面放置几个自定义按钮和另一个javascript小部件,但是在背景叠加层之上.
我只是在抓住可能是最好的方法来解决这个问题.我想我可以将这些内容放在div中,然后在fancybox完成加载后显示该div?我遇到了回调函数的问题,所以我只需要最好的方法来做到这一点.
我有一个函数,它接受一个输入变量并输出一个带有以下调用的模板:
outputhtml($blue_widget);
outputhtml($red_widget);
outputhtml($green_widget);
Run Code Online (Sandbox Code Playgroud)
以及该功能的简化版本:
function outputhtml($type)
{
static $current;
if (isset($current))
{
$current++;
}
else
{
$current = 0;
}
//some logic here to determine template to output
return $widget_template;
}
Run Code Online (Sandbox Code Playgroud)
现在这是我的问题.如果我在脚本中调用函数三次或更多次,我希望输出是一种方式,但如果我只调用该函数两次,那么我有一些html更改需要反映在返回的模板中.
那么如何修改此函数以确定是否只有两个调用它.事后我不能回去问"嘿功能你只跑了两次???"
我无法理解我如何告诉函数它在第二次之后不会被使用并且可以使用必要的html修改.我将如何实现这一目标?