mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-21 17:50:13 +01:00
Removed superfluous 'tracks' directory at the root of the repository.
Testing commits to github.
This commit is contained in:
parent
6a42901514
commit
4cbf5a34d3
2269 changed files with 0 additions and 0 deletions
150
vendor/selenium/lib/cssQuery/src/cssQuery-level3.js
vendored
Normal file
150
vendor/selenium/lib/cssQuery/src/cssQuery-level3.js
vendored
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
/*
|
||||
cssQuery, version 2.0.2 (2005-08-19)
|
||||
Copyright: 2004-2005, Dean Edwards (http://dean.edwards.name/)
|
||||
License: http://creativecommons.org/licenses/LGPL/2.1/
|
||||
*/
|
||||
|
||||
/* Thanks to Bill Edney */
|
||||
|
||||
cssQuery.addModule("css-level3", function() {
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// selectors
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
// indirect sibling selector
|
||||
selectors["~"] = function($results, $from, $tagName, $namespace) {
|
||||
var $element, i;
|
||||
for (i = 0; ($element = $from[i]); i++) {
|
||||
while ($element = nextElementSibling($element)) {
|
||||
if (compareTagName($element, $tagName, $namespace))
|
||||
$results.push($element);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// pseudo-classes
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
// I'm hoping these pseudo-classes are pretty readable. Let me know if
|
||||
// any need explanation.
|
||||
|
||||
pseudoClasses["contains"] = function($element, $text) {
|
||||
$text = new RegExp(regEscape(getText($text)));
|
||||
return $text.test(getTextContent($element));
|
||||
};
|
||||
|
||||
pseudoClasses["root"] = function($element) {
|
||||
return $element == getDocument($element).documentElement;
|
||||
};
|
||||
|
||||
pseudoClasses["empty"] = function($element) {
|
||||
var $node, i;
|
||||
for (i = 0; ($node = $element.childNodes[i]); i++) {
|
||||
if (thisElement($node) || $node.nodeType == 3) return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
pseudoClasses["last-child"] = function($element) {
|
||||
return !nextElementSibling($element);
|
||||
};
|
||||
|
||||
pseudoClasses["only-child"] = function($element) {
|
||||
$element = $element.parentNode;
|
||||
return firstElementChild($element) == lastElementChild($element);
|
||||
};
|
||||
|
||||
pseudoClasses["not"] = function($element, $selector) {
|
||||
var $negated = cssQuery($selector, getDocument($element));
|
||||
for (var i = 0; i < $negated.length; i++) {
|
||||
if ($negated[i] == $element) return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
pseudoClasses["nth-child"] = function($element, $arguments) {
|
||||
return nthChild($element, $arguments, previousElementSibling);
|
||||
};
|
||||
|
||||
pseudoClasses["nth-last-child"] = function($element, $arguments) {
|
||||
return nthChild($element, $arguments, nextElementSibling);
|
||||
};
|
||||
|
||||
pseudoClasses["target"] = function($element) {
|
||||
return $element.id == location.hash.slice(1);
|
||||
};
|
||||
|
||||
// UI element states
|
||||
|
||||
pseudoClasses["checked"] = function($element) {
|
||||
return $element.checked;
|
||||
};
|
||||
|
||||
pseudoClasses["enabled"] = function($element) {
|
||||
return $element.disabled === false;
|
||||
};
|
||||
|
||||
pseudoClasses["disabled"] = function($element) {
|
||||
return $element.disabled;
|
||||
};
|
||||
|
||||
pseudoClasses["indeterminate"] = function($element) {
|
||||
return $element.indeterminate;
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// attribute selector tests
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
AttributeSelector.tests["^="] = function($attribute, $value) {
|
||||
return "/^" + regEscape($value) + "/.test(" + $attribute + ")";
|
||||
};
|
||||
|
||||
AttributeSelector.tests["$="] = function($attribute, $value) {
|
||||
return "/" + regEscape($value) + "$/.test(" + $attribute + ")";
|
||||
};
|
||||
|
||||
AttributeSelector.tests["*="] = function($attribute, $value) {
|
||||
return "/" + regEscape($value) + "/.test(" + $attribute + ")";
|
||||
};
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// nth child support (Bill Edney)
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
function nthChild($element, $arguments, $traverse) {
|
||||
switch ($arguments) {
|
||||
case "n": return true;
|
||||
case "even": $arguments = "2n"; break;
|
||||
case "odd": $arguments = "2n+1";
|
||||
}
|
||||
|
||||
var $$children = childElements($element.parentNode);
|
||||
function _checkIndex($index) {
|
||||
var $index = ($traverse == nextElementSibling) ? $$children.length - $index : $index - 1;
|
||||
return $$children[$index] == $element;
|
||||
};
|
||||
|
||||
// it was just a number (no "n")
|
||||
if (!isNaN($arguments)) return _checkIndex($arguments);
|
||||
|
||||
$arguments = $arguments.split("n");
|
||||
var $multiplier = parseInt($arguments[0]);
|
||||
var $step = parseInt($arguments[1]);
|
||||
|
||||
if ((isNaN($multiplier) || $multiplier == 1) && $step == 0) return true;
|
||||
if ($multiplier == 0 && !isNaN($step)) return _checkIndex($step);
|
||||
if (isNaN($step)) $step = 0;
|
||||
|
||||
var $count = 1;
|
||||
while ($element = $traverse($element)) $count++;
|
||||
|
||||
if (isNaN($multiplier) || $multiplier == 1)
|
||||
return ($traverse == nextElementSibling) ? ($count <= $step) : ($step >= $count);
|
||||
|
||||
return ($count % $multiplier) == $step;
|
||||
};
|
||||
|
||||
}); // addModule
|
||||
Loading…
Add table
Add a link
Reference in a new issue