我试图弄清楚如何选择,然后修改iframe我生成的HTML .iframe显示各种媒体(图像,pdf等).为了显示不同的项目,我最初使用以下内容创建它:
$('#mydiv').html("<iframe id='myiframe' src='path/file.jpg'></iframe>");
Run Code Online (Sandbox Code Playgroud)
然后,根据需要,使用以下内容更新其内容:
$('#myiframe').attr("src","path/newfile.jpg");
Run Code Online (Sandbox Code Playgroud)
这会产生这样的HTML(通过Chrome的元素查看器看到):
<div id='mydiv'>
<iframe id='myiframe' src='path/file.jpg'>
#document
<html>
<body style="margin:0">
<img style="-webkit-user-select:none" src="path/file.jpg">
</body>
</html>
</iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
我想选择动态生成的<img>标签,以便我可以调整其宽度.但我无法找出jquery选择器来做到这一点.想法?
鉴于以下HTML,jQuery选择器会选择最后一个'等等' span但不是第一个?
<div class='d1'>
<span>
<a>blee
<span> <!-- don't select this span -->
<span>blah</span> blah
</span>
</a>
</span>
</div>
<br/>
<div class='d1'>
<span>
<a>blee
<span> <!-- select this span -->
blah blah
</span>
</a>
</span>
</div>
Run Code Online (Sandbox Code Playgroud)
我尝试过使用not()的变体,但无法弄明白.看起来我需要的是一个找到第一个跨度的选择器,但如果它包含另一个跨度则排除它.就像是:
$('.d1 span a span').not(':has("span")')
Run Code Online (Sandbox Code Playgroud)
但那不行.我错过了什么?
鉴于两个几乎相同的文本文件(纯文本,在MacVim中创建),我在Python中将它们读入变量时会得到不同的结果.我想知道为什么会这样,以及我如何能够产生一致的行为.
例如,f1.txt如下所示:
This isn't a great example, but it works.
Run Code Online (Sandbox Code Playgroud)
而f2.txt看起来像这样:
This isn't a great example, but it wasn't meant to be.
"But doesn't it demonstrate the problem?," she said.
Run Code Online (Sandbox Code Playgroud)
当我阅读这些文件时,使用以下内容:
f = open("f1.txt","r")
x = f.read()
Run Code Online (Sandbox Code Playgroud)
当我查看控制台中的变量时,我得到以下内容.f1.txt:
>>> x
"This isn't a great example, but it works.\n\n"
Run Code Online (Sandbox Code Playgroud)
和f2.txt:
>>> y
'This isn\'t a great example, but it wasn\'t meant to be. \n"But doesn\'t it demonstrate the problem?," she said.\n\n'
Run Code Online (Sandbox Code Playgroud)
换句话说,f1只带有转义换行符,而f2也有单引号转义.
repr()显示正在发生的事情.首先是f1:
>>> repr(x)
'"This isn\'t a great example, but …Run Code Online (Sandbox Code Playgroud) 我有一个名为Firechild的Firebase lines.lines包含大约500k条记录,每条记录包含8个键/值对.
当我的应用加载时,它会尝试lines使用以下内容获取最后128条记录:
fb = new Firebase("https://myapp.firebaseio.com/lines");
fb.limitToLast(128).once("value", function(snapshot) {
// do something
});
Run Code Online (Sandbox Code Playgroud)
我发现我的应用程序的初始加载时间越来越慢.唯一改变的是有多少记录lines.limitToLast()随着记录数量的增加,我是否应该越来越长时间lines?如果是这样,我可以尝试随着时间的推移剔除记录,但我的印象是limitToLast()查询只会抓取指定的内容.
这是我想用HTML/CSS重新创建的图像:

中心渐变很容易,两个环(围绕中心的边界,以及具有自己边界的div的div)也是如此.左边的外部阴影看起来也很简单.
这是我到目前为止最好的近似值(有一个匹配的小提琴):
<div id="youedge">
<div id="youlight" class="round border radialgradientbg">
</div>
</div>
#youedge {
border:30px solid #888;
border-radius:190px;
width:190px;height:190px;margin:50px;
box-shadow:-30px 0 0 #555;
}
#youlight { width:150px; height:150px; background-color:#2b0c0f; }
.round { border-radius:190px; }
.border { border:20px solid #777; }
body { background-color:#999; }
.radialgradientbg {
background: -moz-radial-gradient(center, ellipse cover, #4c1113 0%, #16040a 100%); /* FF3.6+ */
background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,#4c1113), color-stop(100%,#16040a)); /* Chrome,Safari4+ */
background: -webkit-radial-gradient(center, ellipse cover, #4c1113 0%,#16040a 100%); /* …Run Code Online (Sandbox Code Playgroud) 我有一个类函数,我想作为一个线程启动.该函数将元组值作为参数.该函数工作正常但我的初始设置抛出TypeError.这是一些示例代码:
import threading
class Test:
def __init__(self):
t = threading.Thread(target=self.msg, args=(2,1))
t.start()
print "started thread"
# msg takes a tuple as its arg (e.g. tupleval = (0,1))
def msg(self,tupleval):
if(tupleval[0] > 1):
print "yes"
else:
print "no"
test = Test()
test.msg((2,2))
test.msg((0,0))
Run Code Online (Sandbox Code Playgroud)
然后输出如下:
started thread
yes
no
Exception in thread Thread-1:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py", line 532, in __bootstrap_inner
self.run()
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/threading.py", line 484, in run
self.__target(*self.__args, **self.__kwargs)
TypeError: msg() takes exactly 2 arguments (3 given)
Run Code Online (Sandbox Code Playgroud)
它似乎适用于最后的两个显式调用,但初始设置调用会抛出TypeError.我已经尝试过以各种方式将值打包到元组中,但无法摆脱错误.想法?
给定以下代码,为什么selector属性在第一个实例中工作但不在第二个实例中工作?它们都不是jQuery对象吗?
<span class='tst'>span</span>?
var tst = $('.tst');
console.log(tst.selector);
// prints '.tst'
$('.tst').each(function() { console.log(this.selector);});
// prints undefined???????
Run Code Online (Sandbox Code Playgroud) 给出这个HTML:
<div id='tst1'>
<div id='tst2'>tst2</div>
<div id='tst3'>tst3</div>
this is the text i want
</div>
Run Code Online (Sandbox Code Playgroud)
如何选择"这是我想要的文字"文字? $('#tst1').text()给出了tst1中包含的所有文本元素(例如tst2,tst3等).
我不能依赖于知道所包含的包含元素的id(上面的tst2,tst3),但我可以依赖于我想要在组中最后列出的文本.
我正在使用用户脚本修改的网站上有一些我想修改的文本。文本中似乎包含Unicode字符。当我在屏幕上查看它甚至使用jQuery将其提取为变量时,它看起来像这样:
2 others
但是,如果我用相同的文本创建自己的变量,然后进行比较,则它们将显示为false。所以我将站点的文本复制/粘贴到了vim中,它看起来像这样:
2<200e> others
最好的说来,这是一个空格(?)的unicode字符。我希望能够将此字符串与正则表达式匹配,例如:
^(\d+(?:,\d+)*)\s+(.*)
但是在带有嵌入的unicode字符的字符串上它失败。(在我自己输入的“ 2个其他”文本上效果很好)。
有什么办法可以将unicode从文本中剥离出来?我尝试了以下操作,但无济于事:
text.replace('\u200e\','')
text.replace('200e','')
text.replace('\%20','')
text.replace('\%u200e','')
或者,可以将我的正则表达式调整为与嵌入的200e unichar字符匹配“ 2个其他”或相同文本吗?
我有一个带有简单数据的Firebase:

有一个"玩家"列表,每个玩家都有一个自生成的GUID,每个都包含一个值"Count".根据我的要求(例如使用once()),我希望能够查询按Count值排序的玩家.因此,基于Firebase文档,我正在使用orderByChild(),但在运行代码时它始终是未定义的:
var fb = new Firebase("https://morewhitepixels.firebaseio.com/");
fb.child("players").orderByChild("Count").once("value",function(data) {
// do something with data
});
Run Code Online (Sandbox Code Playgroud)
但是这段代码总是返回Uncaught TypeError: undefined is not a function指向第二行代码.
我错过了什么?