例如,我有这个代码:
$('.note .exit').click(function() {
$('.note').fadeOut();
});
Run Code Online (Sandbox Code Playgroud)
在我的HTML上有两个.exit和.note实例.如:
<div class="note">
<img src="images/exit.png" class="exit"/>
<p>Some text.</p>
</div>
<div class="note">
<img src="images/exit.png" class="exit"/>
<p>Some other text.</p>
</div>
Run Code Online (Sandbox Code Playgroud)
问题是当我单击一个.note的关闭按钮(退出图像)时,另一个.note也会关闭.我如何修改代码,使其仅适用于我正在关闭的特定.note类?
在执行下一行代码之前,我想先加载一组图像.代码如下:
$('div.some_class img').load(function() {
// do something to div.some_class img
});
Run Code Online (Sandbox Code Playgroud)
但是,在执行命令之前不会加载图像.当我尝试时(window).load,它的工作原理.
我的问题是,为什么不起作用('div.some_class img').load?或者是因为我正在使用类选择器,这是选择元素的最慢方式?
我正在使用setInterval尝试每隔3秒旋转一个图像并使用以下代码:
jQuery的:
$(document).ready(function(){
setInterval(function(){
$bird_wing_left.css({
transform: "rotate(30deg)"
}, 1000)
}, 3000);
});
Run Code Online (Sandbox Code Playgroud)
CSS:
.bird_wing_left {
background: rgba(0, 0, 0, 0) url("../images/bird_wing_left.png") repeat scroll 0 0;
height: 59px;
left: 17px;
position: absolute;
top: 66px;
width: 78px;
transition: all 2s;
}
Run Code Online (Sandbox Code Playgroud)
...但动画只发生一次而不是每3秒发生一次.如果我尝试另一种方法(不是.css),那没关系.可能是什么问题?
我的主要父组件中有此状态:
this.state = {
playableCards: [],
openedCard: null,
offeredChips: 0,
activePlayer: 0, // first player is 0, second player is 1
players: [
{
name: "player1",
remainingChips: 11,
cards: [],
score: null
},
{
name: "player2",
remainingChips: 11,
cards: [],
score: null
}
]
};
Run Code Online (Sandbox Code Playgroud)
现在,我有一些方法可以更改状态的不同属性。例如:
takeCard = () => {
const {
activePlayer,
players,
playableCards,
offeredChips,
openedCard
} = this.state;
if(openedCard) {
// Add card to active player
let playersClone = [...players];
playersClone[activePlayer].cards = [
...playersClone[activePlayer].cards,
openedCard
];
// …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过Python学习编程,我想知道是否可以获得函数的返回值而不是其他部分.这是代码:
让我们说,这是主要功能:
variable_a = 5
while variable_a > 0 :
input_user = raw_input(": ")
if input_user == "A":
deduct(variable_a)
variable_a = deduct(variable_a)
else:
exit(0)
Run Code Online (Sandbox Code Playgroud)
然后这是扣除功能:
def deduct(x):
print "Hello world!"
x = x - 1
return x
Run Code Online (Sandbox Code Playgroud)
会发生什么,它会进行计算并扣除,直到variable_a达到0.然而,"Hello world!" 得到打印两次,我认为因为variable_a = deduct(variable_a)(如果我错了,请纠正我).所以我在想,我可以只捕获deduct()的返回值而不是捕获其余的值吗?所以在这种情况下,在经过deduct()之后,variable_a只有一个普通值2(没有"Hello world!").
我错过了什么吗?:?
编者注:我删除了空行,因此可以粘贴到REPL.
这是一个通过图像旋转的jQuery书籍的示例代码.除了功能(i)部分之外,我理解其中的大部分内容.传递给(i)作为参数的值是什么,当(i)被减去numberOfPhotos时,减去的值究竟是多少?
$(document).ready(function(){
rotatePics(1);
});
function rotatePics(currentPhoto) {
var numberOfPhotos = $('#photos img').length;
currentPhoto = currentPhoto % numberOfPhotos;
$('#photos img').eq(currentPhoto).fadeOut(function() {
$('#photos img').each(function(i) {
$(this).css(
'zIndex', ((numberOfPhotos - i) + currentPhoto) % numberOfPhotos
);
});
$(this).show();
setTimeout(function() {rotatePics(++currentPhoto);}, 4000);
});
}
Run Code Online (Sandbox Code Playgroud) 因此,我收到一个API凭证,要求我输入X-AUTH-HEADER和Content-Type。
在我的邮递员的“标题”选项卡上,有一个“内容类型”键,但我看不到“ X-Auth-Header”键。我只有“授权”密钥。那我在哪里输入X-Auth-Header键?
基本上,我们在index.js文件中有此文件来设置ApolloProvider进行查询/更改的授权。
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import ApolloClient from "apollo-boost";
import { ApolloProvider } from "react-apollo";
let session = localStorage.getItem("session");
let authorization = "";
if(session) {
let sessionObj = JSON.parse(session);
authorization = sessionObj.access_token
}
const graphQLServerURL = process.env.REACT_APP_API_URL;
const client = new ApolloClient({
uri: graphQLServerURL + "/graphql",
headers: {
authorization,
}
});
ReactDOM.render(
<ApolloProvider client={client}>
<App />
</ApolloProvider>
, document.getElementById('root'));
Run Code Online (Sandbox Code Playgroud)
当应用首次加载时,authorization标题为null。但是,在<App>组件中,我们有一个<Login>组件,该组件基本上使用 …
这些在父组件中......
const [setQuantity, quantity] = useState(1);
const handleSetQuantity = e => {
console.log(e.target.value);
console.log("TEST");
setQuantity(e.target.value);
};
Run Code Online (Sandbox Code Playgroud)
我将它传递给子组件,如下所示:
<SomeChildComponent
setQuantity={e => handleSetQuantity(e)}
quantity={quantity}
/>
Run Code Online (Sandbox Code Playgroud)
在 - 的里面 :
<select
onChange={e => props.setQuantity(e)}
value={props.quantity}
>
<option value={1}>1</option>
<option value={2}>2</option>
<option value={3}>3</option>
</select>
Run Code Online (Sandbox Code Playgroud)
由于出现“TEST”日志,我可以从孩子那里访问该功能。但是它告诉我:
Uncaught TypeError: setQuantity is not a function
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?如果是这样,从子组件触发的操作更改父状态的正确方法是什么?
我有一个像这样的对象数组:
entries: [
{
id:1,
text: "Lorem ipsum",
timeStamp:"Thu, 01 Jun 2018"
},
{
id:3,
text:"Lorem ipsum",
timeStamp:"Thu, 24 May 2018"
},
{
id:4,
text: "Lorem ipsum",
timeStamp:"Thu, 24 May 2018"
}
]
Run Code Online (Sandbox Code Playgroud)
现在我希望能够将它们分组到“存档”数组中,如下所示:
archive: [
{
monthyear: May 2018,
entries: 2
},
{
monthyear: June 2018,
entries: 5
}
]
Run Code Online (Sandbox Code Playgroud)
想知道我应该使用什么样的数组函数来获得预期的结果。