我在ng-repeat中有这个代码:
<a href="#" class="disabled" ng-click="doSomething(object)">Do something</a>
Run Code Online (Sandbox Code Playgroud)
如何设置按钮被禁用的条件class="disabled"?
或者有没有办法在Javascript中这样做,所以看起来像:
$('.do-something-button').click(function(){
if (!$(this).hasClass('disabled')) {
do something
}
});
Run Code Online (Sandbox Code Playgroud) 让我说我有
<div class="myDiv">Hi there</div>
Run Code Online (Sandbox Code Playgroud)
我想提出一个background-image并给它一个opacity的0.5-但我想,我写的文字将有充分的不透明度(1).
如果我像这样写CSS
.myDiv { opacity:0.5 }
Run Code Online (Sandbox Code Playgroud)
一切都将是低透明度 - 我不希望这样.
所以我的问题是 - 如何获得具有完全不透明度文本的低不透明度背景图像?
我有这行代码:
$('#sitesAccordion .groupOfSites').click(function() {
var lastOpenSite = $(this).siblings().hasClass(':not(.closedTab)');
console.log(lastOpenSite);
});
Run Code Online (Sandbox Code Playgroud)
我得到"假"而不是获得其他元素之一(假设有一个 - 并且必须有).我猜问题是:
.hasClass(':not(.closedTab)');
Run Code Online (Sandbox Code Playgroud)
问题是什么?
我的目的是创建自己的手风琴(不使用jQuery UI)
而我正试图这样写:
$('#sitesAccordion .groupOfSites').click(function() {
//Get the last opened tab
var lastOpenSite = $(this).siblings().hasClass(':not(.closedTab)');
//Close last opened tab and add class
lastOpenSite.hide().toggleClass('closedTab');
//Open the current Tab
$(this).children('.accordionContent').toggle('fast');
// remove class from open tab
$(this).toggleClass('closedTab');
});
Run Code Online (Sandbox Code Playgroud)
这是最好的方法吗?谢谢,Alon
我知道如何在AngularJS中创建一个视图条件,它将显示或隐藏依赖于条件的dom元素:
<div ng-show="{{isTrue}}">Some content</div>
Run Code Online (Sandbox Code Playgroud)
但是如何创建一个渲染条件来确定是否渲染div?
我一直在尝试使用CSS3,并完全用CSS3构建一个Netscape徽标进行培训.
链接在这里:
http://alonbt.com/css3/netscape/
问题是:在Firefox中看起来都很好,但在Chrome中出了问题.我认为这是overflow:hidden我的 - 在Firefox中它可以工作,但Chrome似乎没有很好地渲染它.
有什么建议可能是什么问题?
我已经阅读了很多关于如何过滤列表的教程,但是找不到我的简单用例的例子.
我有几个按钮,如
<a href="#" id="filter-by-name">Name</a>
<a href="#" id="filter-by-age">Age</a>
<a href="#" id="filter-by-height">Height</a>
Run Code Online (Sandbox Code Playgroud)
我有var persons = {...}对象,我显示它
<div ng-repeat="person in persons">
{{person.name...}}
</div>
Run Code Online (Sandbox Code Playgroud)
如何创建过滤器,以便每次单击其中一个按钮时,列表将被过滤?
我已经尝试添加ng-repeat="person in persons | filter:filterPersons"
并在脚本端写入:
$scope.filterPersons(person){
if (person.name == "John")
return person;
}
Run Code Online (Sandbox Code Playgroud)
但这只是一个用例(如何用其他名称过滤?) - 换句话说 - 如何将链接连接到过滤器?
我有这个角度代码:
<div class="element-wrapper" ng-repeat="element in elements">
<div class="first-wrapper">
<div class="button" ng-click="doSomething(element,$event)">{{element.name}}</div>
</div>
<div class="second-wrapper">
<input type="text" value="{{element.value}}">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想要发生的事情:当用户点击按钮时 - 输入元素将被聚焦.
单击按钮元素并将其聚焦后,如何找到输入元素?
我可以做一个看起来像这样的函数:
function doSomething(element,$event) {
//option A - start manipulating in the dark:
$event.srcElement.parentNode.childNodes[1]
//option B - wrapping it with jQuery:
$($event.srcElement).closest('.element-wrapper').find('input').focus();
}
Run Code Online (Sandbox Code Playgroud)
它们都不起作用 - 是否有更好的角度方法可以做到这一点?使用功能,如.closest()与.find()在jQuery的?
更新:
我发现这个黑客工作(但它似乎仍然不是正确的解决方案):
function doSomething(element,$event) {
setTimeout(function(){
$($event.srcElement).closest('.element-wrapper').find('input').focus();
},0)
}
Run Code Online (Sandbox Code Playgroud)
我用setTimeout包装它,所以在Angular完成它的所有操作后,它会聚焦在input元素上.
这句话总是如此吗?
$("p").click(function(event) {
alert( event.currentTarget === this );
});
Run Code Online (Sandbox Code Playgroud)
一种方法比另一种方法更受欢迎吗?我喜欢用$(this)而不是 event.currentTarget但在某些情况下可以做得更好吗?哪个更好?绝对一样吗?
另一个细微差别 - 当检查萤火虫console.log(this)并console.log($(this))给我完全相同的元素.如果它们是相同的 - 有什么不同?(因为我知道我可以写这个$(this).css('color','white')但不能写this.css('color','white')
我的主要目标是:
转到我的应用程序,在新选项卡中打开一个链接,在新选项卡中创建一些内容并将事件发送到父主选项卡进行刷新.
我学到了两种技术并没有完全符合我的需要:
如何使用制表符将事件从子节点传递给父节点?我很高兴在父母和孩子的javascript代码的具体示例.它应该适用于跨域(例如:www.mydomain.com和bills.mydomain.com).
有没有我错过的jQuery解决方案?
javascript ×7
html ×5
angularjs ×4
jquery ×3
css ×2
css3 ×2
accordion ×1
aptana ×1
aptana3 ×1
background ×1
filter ×1
firefox ×1
postmessage ×1
tabs ×1