小编mtw*_*let的帖子

React Redux将HOC与连接组件一起使用

我正处于我的第一个React Native项目中.我想创建一个纯粹处理来自api的同步数据的HOC.然后这将包装我的所有其他组件.

如果我是正确的,我的DataSync组件将通过在export语句中执行以下操作来增强所有其他组件:

export default DataSync(SomeOtherComponent);

我正在努力的概念是,SomeOtherComponent还取决于React Redux Connect方法来检索其他redux状态.我的问题是如何将两者结合使用?像这样的东西?

export default DataSync(connect(mapStateToProps, mapDispatchToProps)(SomeOtherComponent));

我可能完全误解了这里的概念,所以我真的很感激一些指示

编辑

进一步解释:

我的DataSync HOC将纯粹处理应用程序之间的数据同步,并将成为顶级组件.它需要访问auth状态,并将为Redux(在本例中为订单)设置所有其他组件的数据.

嵌套在DataSync HOC中的组件需要访问检索到的数据,路由,它们又创建必须定期同步回服务器的状态(订单).

javascript reactjs react-native redux react-redux

11
推荐指数
4
解决办法
2万
查看次数

jQuery:nth-​​child()选择器

嗨,请看下面的HTML.我正在尝试使用jQuery来获取class="box"包含在DIV中的DIV上的每个第3个实例,并且class="entry"没有右边距:

我的HTML代码:

<div class="entry">

    <div class="box">
        SOME HTML....
    </div><!-- end .box -->

    <div class="box">
        SOME HTML....
    </div><!-- end .box -->

    <div class="box">
        SOME HTML....
    </div><!-- end .box I Want to remove right hand margin on this div -->

    <div class="box">
        SOME HTML....
    </div><!-- end .box -->

    <div class="box">
        SOME HTML....
    </div><!-- end .box -->

    <div class="box">
        SOME HTML....
    </div><!-- end .box I Want to remove right hand margin on this div -->

    <div class="box">
        SOME HTML.... …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-selectors

7
推荐指数
2
解决办法
3万
查看次数

使用Jquery在新窗口中打开链接

我试图使用Jquery而不是_blank在新窗口中打开一些链接,所以我的HTML仍然有效.我的代码看起来像这样:

$(document).ready(function() {
    $('a[id="external-url"]').click(function(){
        $(this).attr('target','_blank');
    });
});
Run Code Online (Sandbox Code Playgroud)

这很好用,除非链接包含在我使用Jquery load()方法放在页面上的html中.谁能解释为什么,请帮助解决方案?

jquery load

7
推荐指数
1
解决办法
2万
查看次数

jQuery窗口滚动事件.滚动每个XX像素

我正在使用优秀的jQuery Reel插件(http://jquery.vostrel.cz/reel)进行项目.我想绑定到窗口滚动事件,所以当用户向下滚动页面时,插件前进1帧,例如每10px滚动一次,如果用户向上滚动动画则反转.

该插件有方法我可以传递值没有问题,我知道如何绑定到窗口滚动事件.我正在努力的是最后一次.

我如何使用jQuery/JavaScript来表示在任何垂直方向上滚动的每10个像素在动画中前进1帧?我知道我可以将窗口滚动存储在一个变量中,但我不确定每次碰到10个前进一帧的倍数时该怎么说.

提前谢谢了.

编辑

感谢下面用户的帮助,我找到了一个解决方案.如下:

$(window).scroll(function()
{
    windowScrollCount   = $(this).scrollTop();
    animationFrame      = Math.round(windowScrollCount / 100);
});
Run Code Online (Sandbox Code Playgroud)

所以我在windowScrollCount中获取滚动距离,将其转换为animationFrame中的帧并使用.reel("frame",animationFrame)将其设置回来.我实际上是每100帧一次这样做,因为每10帧就要快.

javascript jquery scroll window

6
推荐指数
1
解决办法
7189
查看次数

<head>中的<noscript> <img rel="nofollow noreferrer" />有效吗?

关于以下代码在<head>网站部分是否有效,我想提供一些建议:

<noscript><img src="http://bux1le001.com/images/track/26351.png?trk_user=26351&trk_tit=jsdisabled&trk_ref=jsdisabled&trk_loc=jsdisabled" height="0px" width="0px" style="display:none;" /></noscript>
Run Code Online (Sandbox Code Playgroud)

我被要求将它添加到我照顾的网站,但据我所知,这意味着如果禁用JavaScript它会显示一个图像来警告用户,但如果我把它放在该<head>部分它将无法正常工作会吗?

html noscript html-head

6
推荐指数
1
解决办法
3323
查看次数

了解每个循环的jQuery

我有以下代码:

HTML:

<div class="sectionInner"><div class="carousel"></div></div>
<div class="sectionInner"></div>
<div class="sectionInner"></div>
<div class="sectionInner"></div>
Run Code Online (Sandbox Code Playgroud)

JS:

function checkForCarousel() {
    $('.sectionInner').each(function(i) {
        if($(this).has('.carousel')) {
            alert('We got a Carousel!');
        }
        else {
            alert('No Carousels here')
        }
    });
}

checkForCarousel();
Run Code Online (Sandbox Code Playgroud)

我想要做的是循环遍历四个div.sectionInner,如果我找到一个带旋转木马类的孩子,那么我想附加一些按钮.我知道我可以直接定位旋转木马,但这是更大图片的一部分,我确实有理由想要使用循环.

无论如何,当循环开始时,它会警告'我们有一个旋转木马',正如您对第一个div所期望的那样.然后,当很明显我们没有其他三个div的旋转木马时,它会继续警告'我们有一个旋转木马'.我在这做错了什么?

each jquery

4
推荐指数
1
解决办法
383
查看次数

JQuery Ajax帮助

我的网站上有一个页面,目前通过ajax加载html.JQuery是:

$(document).ready(function() {
$('.projects a').click(function(event) {
    $('#work').load(this.href);
    event.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)

});

和HTML是:

<div class="projects">
    <a href="work/link.html" title="blah" id="blah">blah</a>

    <a href="work/link1.html" title="blah" id="blah">blah</a>

    <a href="work/link2.html" title="blah" id="blah">blah</a>
</div>
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我的要求已经改变我想拉一个页面的某个区域我正在加载到#work div.所以我想说当点击.project a时,将#this div的内容从this.href加载到#work中.谁能指出我正确的方向?

jquery

3
推荐指数
1
解决办法
63
查看次数

来自对象中心的jquery动画

我正在尝试创建一个类似于本页底部的产品查看器http://www.logitech.com/en-gb/.你可以看到产品从中心而不是左上角动画,我认为这是Jquery的默认设置.所以我正在做的是尝试设置宽度和高度的动画,然后尝试偏移,使其看起来像是从中心动画.

我的代码看起来像这样:

<style>
  body {
    background: black;
  }
  .box {
    background: #fff url('pic.jpg') no-repeat 0 0;
    width: 200px;
    height: 200px;
    margin: 10px 4%;
    float: left;
  }

</style>

<script type="text/javascript">
    $(document).ready(function() {
        $(".box").hover(function() {
            $(".box").not(this).fadeTo(500, 0.5);
            $(this).animate({
                width: 300,
                height: 300,
                left: -100,
                top: -100
            }, 500);
        },
        function() {
            $(this).animate({
                width: 200,
                height: 200,
                left: 100,
                top: 100
            }, 500);
            $(".box").fadeTo(500, 1);
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

我似乎无法像我想的那样工作.任何人都可以帮助这个或建议一个更好的技术?非常感谢

jquery jquery-animate

3
推荐指数
1
解决办法
9730
查看次数

jQuery get href attr remove .html

我有以下jQuery:

$('.aboutUs a').live('click', function(e){
    e.preventDefault();

    var clickedElement = $(this).attr('href');
});
Run Code Online (Sandbox Code Playgroud)

如果我console.log结果我将获得page.html.我想要的是删除.html但不确定如何.有人可以帮忙吗?非常感谢.

javascript jquery attr

2
推荐指数
1
解决办法
898
查看次数

添加/删除类onclick与JavaScript没有图书馆

我正在开发一个移动网站,并希望使用JS只是添加和删除类.因此,为了保持良好和轻松,我不想使用jQuery.

我有以下HTML:

<div id="masthead">
    <a href="index.html" title="Home" id="brand">Brand</a>

    <a href="#" id="openPrimaryNav">Menu</a>

    <ul id="primaryNav" class="">
        <li><a href="index.html" title="Home">Home</a></li>
        <li><a href="benefits.html" title="Benefits">Benefits</a></li>
        <li><a href="features.html" title="Features">Features</a></li>
        <li><a href="casestudies.html" title="Case Studies">Case Studies</a></li>
        <li><a href="instore.html" title="In Store">In-Store</a></li>
        <li><a href="contact.html" title="Contact">Contact Us</a></li>
        <li id="closePrimaryNav"><a href="#" title="Contact">Close Menu</a></li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

以及到目前为止的以下JS:

window.onLoad = init;

function init()
{
    document.getElementById('openPrimaryNav').onClick   = openPrimaryNav();
    document.getElementById('closePrimaryNav').onClick  = closePrimaryNav();
}

function openPrimaryNav()
{
    document.getElementById('primaryNav').className = 'open';
}

function closePrimaryNav()
{
    document.getElementById('primaryNav').className = '';
}
Run Code Online (Sandbox Code Playgroud)

我不能让这个工作有人能告诉我我做错了什么吗?提前谢谢了.

基于下面提供的答案的正确JS:

window.onload = init;

function init()
{
    document.getElementById('openPrimaryNav').onclick …
Run Code Online (Sandbox Code Playgroud)

javascript addclass onclick removeclass

2
推荐指数
1
解决办法
2万
查看次数