在过去,我一直在以非常业余的方式开发,这意味着我有一个本地机器,我开发和测试代码和生产机器,我在完成后复制代码.最近我把它稍微修改到我在本地开发的地方,检查代码到SVN然后通过SVN更新生产机器.
现在我想开始一个新项目并改进我的工作流程.理想情况下,我有以下几点:
由于我不熟悉这个过程,我正在寻找有关如何最好地设置这个想法和使用工具的建议,特别是在构建工具方面.我正在研究Ant和Phing(可能是make),但我对此很新,我真的想得到一些指导.有没有关于PHP部署的好的教程或书籍,特别是对于初学者?我特别感兴趣的是以下主题:
我知道我的问题可能听起来很混乱......我承认,我是新手,并且可能在我真正需要的时候有点偏离目标.这就是为什么我们非常感谢任何帮助.
我的页面上有一个标准的Twitter Bootstrap模式:
<div class="modal hide fade">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>Comments</h3>
</div>
<div class="modal-body">
<p>Please provide a comment:</p>
<textarea id="comment"></textarea>
</div>
<div class="modal-footer">
<a href="#" class="btn btn-primary">Save comment</a>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
现在,我通过AJAX保存评论,并在成功保存时关闭模式.但是,我有一个全局的AJAX错误处理程序,当任何AJAX调用遇到错误时,它本身会打开一个模态(不仅仅是对AJAX调用的注释):
<div id="error-modal" class="modal hide" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>Error</h3>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
模态体由错误处理程序填充,默认情况下,新模态放在现有模态的顶部.然而,新模态的模态背景是原始模态的背后,它仍然允许与它进行交互.
有没有办法给错误模态背景一个不同的z-index?现在,模态背景是模态不可知的,并且没有模态特定的id/class.
或者是否有任何好的插件可以处理多个Twitter Bootstrap模式?
我的JS设置中有一个主对象,即:
var myGarage = {
cars: [
{
make: "Ford",
model: "Escape",
color: "Green",
inuse: false
},
{
make: "Dodge",
model: "Viper"
color: "Red",
inuse: true
},
{
make: "Toyota",
model: "Camry"
color: "Blue",
inuse: false
}
]
}
Run Code Online (Sandbox Code Playgroud)
现在我把车停在我的车上并放在桌子上.在表格中,我还有一个按钮,可让我将车辆切换为"使用中"和"未使用中".
如何将每行的DOM元素与其对应的汽车相关联,这样如果我切换"inuse"标志,我可以更新主对象?
我来自PHP世界,其中任何名称以方括号结尾的表单数据自动被解释为数组.例如:
<input type="text" name="car[0]" />
<input type="text" name="car[1]" />
<input type="text" name="car[3]" />
Run Code Online (Sandbox Code Playgroud)
将在PHP端被捕获为名为"car"的数组,其中包含3个字符串.
现在,有没有办法在提交到JSP/Servlet后端时复制该行为?任何可以为你做的图书馆?
编辑:
为了进一步扩展这个问题:
在PHP中,
<input type="text" name="car[0][name]" />
<input type="text" name="car[0][make]" />
<input type="text" name="car[1][name]" />
Run Code Online (Sandbox Code Playgroud)
会得到一个嵌套数组.我怎样才能在JSP中重现这一点?
我想在页面加载时自动滚动到特定的div.但是,我似乎与JQM的滚动到顶级功能发生了一些冲突.
我使用以下代码:
$.mobile.silentScroll($("#myElementId").offset().top);
Run Code Online (Sandbox Code Playgroud)
这样包裹时不能正确滚动:
$('[data-role=page]').bind("pageshow", function() {
$.mobile.silentScroll($("#myElementId").offset().top);
});
Run Code Online (Sandbox Code Playgroud)
但正常工作有点像这样的超时:
$('[data-role=page]').bind("pageshow", function() {
setTimeout(function(){$.mobile.silentScroll($("#myElementId").offset().top);},100);
});
Run Code Online (Sandbox Code Playgroud)
最后一段代码的问题是它会导致闪烁,跳转到顶部然后跳转到页面.任何想法如何避免这种情况?
我正在玩Play!框架1.2.4并且创建静态404页面没有问题.但是,我想让404页面更有活力.
404页面是否有"控制器"?如果没有,我在哪里可以完成传统控制器中的所有逻辑?
在页面完全加载并且JQM处理了所有ui修改(即列表视图,按钮等)之后,我试图只执行一次JS片段.我确实希望它只在该页面上执行,而不是在后续页面上执行.
我首先尝试的是页面显示
<script>
$('[data-role=page]').live("pageshow", function() {
alert("Ready!");
});
</script>
Run Code Online (Sandbox Code Playgroud)
这有一个问题,即该函数现在附加到页面div,并在每次显示任何后续页面时执行.但是,我只希望执行一次,并且只对包含该JS片段的页面执行.
有没有办法收听pageshow事件,而不实际附加功能.
我能够做到的唯一方法是通过绑定和取消绑定:
<script>
$('[data-role=page]').bind("pageshow.test", testfun);
function testfun() {
alert("Ready!");
$('[data-role=page]').unbind("pageshow.test", testfun);
}
</script>
Run Code Online (Sandbox Code Playgroud)
但有更优雅的方式吗?
我有一个div有两个内部div的容器.内部divs 在外部容器display:block/none上切换hover,因此在任何给定时间只能看到一个内部.
外容器具有a min-height,但可以根据内容物而膨胀.如果两个内部内容都短于min-height,那么一切都很好.但是,如果其中一个内部容器比它高min-height,我会在悬停时跳过外部容器的高度.
我想要的是:
min-height如果两个内部容器都较短,则外部容器保持其状态.min-height示例HTML:
<div class="outer">
<div class="inner inner1">Inner 1 Green</div>
<div class="inner inner2">Inner 2 Blue</div>
</div>
<div class="after">Some text afterwards</div>
Run Code Online (Sandbox Code Playgroud)
CSS示例:
.outer {
position:relative;
width: 300px;
min-height: 150px;
background: red;
padding: 10px
}
.inner {
width: 200px;
}
.inner1 {
background: green;
height: 200px
}
.inner2 {
background: blue;
height: 100px;
display: none;
}
.outer:hover .inner1 { …Run Code Online (Sandbox Code Playgroud) 所以我有一堆选项卡都在list元素中.我在View中使用Ruby on Rails,所以它看起来像这样:
<div id="top-nav">
<ul>
<li> <%= link_to "Home", user_root_path() %> </li>
<li> <%= link_to "Manage", manage_path() %> </li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
等等.
如何在CSS中设置样式以便我可以单击文本周围的框以转到该链接,而不必单击文本本身?
我查看了一些答案并尝试使用display:block; 在top-nav和li元素中,但它没有工作.
谢谢!
我正在寻找一个有点光滑的解决方案,在我的一个JQM页面上有一个"页内"对话框.我试图避免离开页面,因为对话框弹出是一个"查找",可以帮助用户填充表单域.我不想离开实际页面,因此不会丢失用户已输入的任何其他信息.
我的第一次尝试是使用simpledialog2插件,我在网站的其他部分使用弹出菜单.虽然它适用于基本链接,但它在较长的列表上变得非常笨重.在尺寸调整,尤其是滚动时,感觉非常有限.
我有点喜欢长多选的对话框弹出的内置JQM实现.为了给你一个想法,看看这个jsfiddle
有谁知道这个对话框弹出是如何实现的,如果我可以用某种方式调用相同的方法?如果没有,有没有人知道这种"页内"对话的替代品?
任何帮助表示赞赏.
PS:我不能在JQM中使用多页面模板,因为该站点是作为Web应用程序构建的,我依赖于单页面的AJAX加载,多页面模板不支持.
在JS对象中找到成员位置的最快方法是什么?
假设我有以下对象:
var myObject = {
"apple": { "color" : "green", "shape" : "round" },
"banana": { "color" : "yellow", "shape" : "long" },
"orange": { "color" : "orange", "shape" : "round" },
"kiwi": { "color" : "green", "shape" : "round" }
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我想知道香蕉的位置(即2),我是否需要循环通过对象或者是否有更快的方法?
更新:
感谢大家,我现在明白对象中没有"顺序"的概念,我无法可靠地找到成员的位置.我也没有机会找到下一个或前一个成员.这一切都很有道理......
所以我解决问题的方法是这样的:我遍历我的数组并将密钥输入一个数组,我可以用它来跟踪我在对象中的成员.
var fruits = new Array();
for (var key in myObject) {
fruits.push(key);
}
Run Code Online (Sandbox Code Playgroud) 我已经创建了一个小代码放在<title>我的Wordpress网站的标签内,以根据访问者所在的页面回显某个标题.这是代码:
<title>
<?php if ( is_page('144')) { bloginfo('name'); } else { wp_title(''); bloginfo('name'); } ?>
</title>
Run Code Online (Sandbox Code Playgroud)
现在我想在页面标题和博客名称之间放置一个空格或竖线(|),在PHP代码中,但我无法这样做.我尝试使用 并|喜欢这样:
<title>
<?php if ( is_page('144')) { bloginfo('name'); } else { wp_title('');|bloginfo('name'); } ?>
</title>
Run Code Online (Sandbox Code Playgroud)
但它返回一个错误说Parse error: syntax error, unexpected '&'.
我想知道这个问题是否有任何解决方案,期待听到专家的意见,谢谢.
html ×4
jquery ×3
css ×2
javascript ×2
modal-dialog ×2
php ×2
arrays ×1
deployment ×1
forms ×1
jsp ×1
object ×1
servlets ×1
svn ×1
title ×1
wordpress ×1