小编Gre*_*eso的帖子

如何删除已在Xcode故事板中设置的约束

正如标题所说,我想删除已在故事板中设置的约束.但是我没有在Xcode中找到任何允许我这样做的UI选项.如何删除已存在的约束?

谢谢.

xcode objective-c ios xcode6

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

删除git中的空提交

我刚刚将一个项目从Mercurial迁移到Git.当你添加标签时,Mercurial会添加空提交,所以我最终在Git中提交了我要删除的空提交.

如何从Git中删除空提交(其中没有任何文件的提交)?

谢谢.

git version-control git-commit

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

在ViewPager中滑动方向

我有一个使用ViewPager和FragmentStatePagerAdapter的Android应用程序.然而,我需要添加一个新功能,我必须知道滑动方向从一个片段视图移动到另一个,左或右.(也就是说,当我向左滑动时,我会做一件事,当我向右滑动时,我会做其他事情).

请注意,我不需要在滑动结束后发生事件.滑动发生时我必须做这些事件.我想过使用setOnPageChangeListener()但它并没有告诉我滑动方向.你能告诉我如何找出滑动方向吗?

谢谢.

android direction swipe android-viewpager fragmentstatepageradapter

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

JavaScript或jQuery中的关键部分

我有一个网页,其中异步触发某个Ajax事件.这个Ajax部分可以被调用一次或多次.我无法控制触发此事件的次数,也无法控制时间.

此外,Ajax部分中有一些代码应作为关键部分运行,这意味着,当它运行时,不应该运行该代码的其他副本.

这是一个伪代码:

  1. 运行JavaScript或jQuery代码
  2. 输入作为Ajax的关键部分(当某个进程正在等待响应回调时,请不要再次进入此部分,直到此过程完成)
  3. 运行更多JavaScript或jQuery代码

我的问题是,我怎样才能按照上述方式运行第2步?如何使用JavaScript或jQuery创建/保证互斥部分.

我理解理论(信号量,锁,等等),但我无法使用JavaScript或jQuery实现解决方案.

编辑

如果你建议一个布尔变量进入临界区,这将不起作用,下面的行将解释原因.

关键部分的代码如下(使用布尔变量建议):

load_data_from_database = function () {

    // Load data from the database. Only load data if we almost reach the end of the page
    if ( jQuery(window).scrollTop() >= jQuery(document).height() - jQuery(window).height() - 300) {

        // Enter critical section
        if (window.lock == false) {

            // Lock the critical section
            window.lock = true;

            // Make Ajax call
            jQuery.ajax({
                type:        'post',
                dataType:    'json',
                url:         path/to/script.php,
                data:        {
                    action:  'action_load_posts'
                },
                success:     function (response) …
Run Code Online (Sandbox Code Playgroud)

javascript jquery semaphore critical-section mutual-exclusion

8
推荐指数
1
解决办法
6470
查看次数

使 VSCode 的注释从列位置 0 开始

在 VSCode 中,当我按下组合键ctrl+时/,VSCode 将对所选行进行注释,确保缩进完好无损。因此,如果一行代码从位置 16 开始,那么注释的双斜杠(即//)将位于位置 16,将代码向右移动一点。

我想设置它,以便当我按ctrl+时/,注释双斜杠//将始终从列位置 0 开始。这可能吗?

谢谢。

comments keyboard-shortcuts visual-studio-code

8
推荐指数
1
解决办法
1977
查看次数

如何成功退出“vimdiff”(用作“git”的合并工具)而不保存?

我对此很陌生,所以对基本问题表示歉意。

我使用的是Ubuntu环境。我已经安装了git。我将vimdiff设置为合并工具。

我正在测试环境,但遇到问题。

我在文件中创建了冲突readme.txt当我尝试从分支develop合并到master时,显然会发生冲突。正如预期的那样,添加了一些“标记字符”readme.txt来指示冲突发生的位置。因此,下一步是调用git mergetool启动vimdiff

到目前为止,一切都按预期进行,vimdiff现已启动。但后来,我决定退出vimdiff而不做任何更改。我想将我的更改“推迟”到另一个时间。因此,我按<ESC>,然后按:qa!,认为这将停止合并过程。不幸的是,事实并非如此。看起来合并现在被认为已解决并成功,并且readme.txt文件虽然没有更改,并且包含冲突标记,但现在已准备好提交。

现在回答我的问题。如何终止git mergetool通话、退出vimdiff并重新开始,就像我没有拨打电话一样?

谢谢。

git vim ubuntu merge vimdiff

8
推荐指数
1
解决办法
8086
查看次数

使用CSS的浮动DIV之间的垂直边框

我是以下HTML结构

<div id='parent'>
    <div id='child-1'>Some text goes here</div>
    <div id='child-2'>Different text goes here</div>
    <div class='clear'></div>
</div>
Run Code Online (Sandbox Code Playgroud)

现在,我有以下css

#parent {
    width: 800px;
    position: relative;
}

#child-1 {
    width: 500px;
    float: left;
}

#child-2 {
    width: 200px;
    float: left;
}

.clear {
    clear: both;
}
Run Code Online (Sandbox Code Playgroud)

现在,子div(child-1child-2)的内容可以是任何内容,因此最终child-1的高度可能大于child-2,或者child-2的高度可能大于child-1.

我想要做的是,在child-1和child-2之间有一条垂直线,这条线的div长度更长.我尝试了两个div的边框,(对于child-1的右边框和div-2的左边框),但这不是一个好主意,因为线条会显得很粗,两个div相互接触,然后变薄部分.

我怎样才能做到这一点?我也喜欢只在可能的情况下使用CSS,没有jQuery和JavaScript.如果您认为需要额外的div,那么这是可以的.

谢谢.

html css border

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

OPTION元素中的SVG

我正在创建以下svg元素和结构:

<svg width="135" height="15">
    <rect width="15" height="15" fill="#ffffe5" x="0" y="0"></rect>
    <rect width="15" height="15" fill="#f7fcb9" x="15" y="0"></rect>
    <rect width="15" height="15" fill="#d9f0a3" x="30" y="0"></rect>
    <rect width="15" height="15" fill="#addd8e" x="45" y="0"></rect>
    <rect width="15" height="15" fill="#78c679" x="60" y="0"></rect>
    <rect width="15" height="15" fill="#41ab5d" x="75" y="0"></rect>
    <rect width="15" height="15" fill="#238443" x="90" y="0"></rect>
    <rect width="15" height="15" fill="#006837" x="105" y="0"></rect>
    <rect width="15" height="15" fill="#004529" x="120" y="0"></rect>
</svg>
Run Code Online (Sandbox Code Playgroud)

这会产生一排小方块.像这样:

在此输入图像描述

到目前为止一切都还可以.

然后我把上面的代码内的option用于select下拉,如下所示:

<select id="data-color-scheme">
    <option id="YlGn">
        <div>
            <svg width="135" height="15">
                <rect width="15" height="15" fill="#ffffe5" …
Run Code Online (Sandbox Code Playgroud)

html select svg option

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

在Chrome和IE中单击后退按钮时,防止重新加载Ajax数据

我目前正在一个网站上,主页显示最近的10个博客条目.当我向下滚动时,当我几乎到达屏幕上最后一项的末尾时,会自动加载另外10个博客条目,依此类推(这是无限滚动功能).

如果用户单击任何博客条目,则他/她将被带到另一个页面以显示有关该博客条目的详细信息.当用户单击后退按钮时,他/她将被带到显示条目的主页.

请注意,主页使用Ajax加载数据.

假设以下场景:

  1. 用户进入站点,并加载条目1到10(通过Ajax).

  2. 用户向下滚动,然后加载下一个10个,特别是条目11到20(也通过Ajax).请注意,页面现在显示为1到20.

  3. 用户向下滚动,现在加载条目21到30,在页面上显示总共1到30个博客条目.

  4. 用户点击条目25,显示条目25的页面.

  5. 用户单击后退按钮,将显示所有项目1到30.

现在,如果用户使用火狐,Opera或Safari浏览器,当用户执行步骤5(即,单击后退按钮返回到主页),那么博客条目只是显示在屏幕上,并没有被重新加载.但是,使用IE和Chrome时,当用户单击后退按钮时,将重新加载页面,并且仅显示项目1到10.

我不喜欢IE和Chrome的行为.用户应该看到第1项到第30项.我如何确保所有浏览器都像FireFox一样?

谢谢.

更新

这是我正在使用的代码

首先,她是我的HTML

<html>
    <body>

        <section id="content">
            <section id="articles">
                <!-- This section is filled by jQuery/Ajax -->
            </section>

            <section id="loading-spinner">
                <img src="ajax-loader.gif" />
            </section>

        </section>

    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是我的jQuery

/**
 * 
 * This file uses a bunch of programming concepts, but the most important one is ensuring ajax calls run as a critical section
 * ... (this means if ajax is already called, then another instance of JavaScript cannot …
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery back-button infinite-scroll

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

在 PHP 中将 HTML 实体和特殊字符转换为 UTF8 文本

有很多关于在 PHP 中将 HTML 实体和特殊字符转换为 UTF8 文本的问题和文档。还有 PHP 文档本身,例如 thishtmlspecialchars_decode()和 this html_entity_decode()。但是,我找不到任何函数/解决方案清楚地描述如何将任何 HTML 字符和特殊实体转换为 UTF-8 文本。他们都说“如果你想这样做,那就这样做”等等。但没有任何解决方案指出“拥有人类可以阅读的纯 UTF-8 文本,然后这样做”。

我问的原因是我真的没有测试用例。我正在读取一个数据库,它是多语言的。然而,唯一的保证是字符是 HTML 格式的,我需要将它们转换为 UTF-8,以便理解这些语言的人可以阅读。现在,我该怎么做呢?清理/解码输入使其成为纯文本的正确方法是什么?

谢谢。


更新

这是一个更新,从评论中可以清楚地看出我没有正确地提出问题。我的数据库包含文本。我想将该文本(包含 HTML 实体和特殊字符)转换为可以在网页上向最终用户显示的 UTF-8 文本。数据库中的文本是用多种语言编写的(例如法语、阿拉伯语、英语等)。所有这些都可以包含特殊字符的 HTML 实体。那么我怎样才能将所有这些转换为 UTF-8 文本,以便理解这些语言的人可以阅读呢?我喜欢删除那些特殊字符并将它们转换为人类可以阅读的内容。

php decode utf-8 html-entities htmlspecialchars

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