Используйте это:
$('#pollSlider-button').animate({"margin-right": '+=200'});
Улучшенная версия
Некоторый код был добавлен в демонстрация, чтобы предотвратить двойное поле при двойном щелчке: http://jsfiddle.net/XNnHC/942/
Используйте его с замедлением;)
http : //jsfiddle.net/XNnHC/1591/
Удалены лишние коды JavaScript.
Имена классов и amp; некоторые CSS-коды изменены
Добавлена функция поиска, если развернуто или свернуто
Изменено, используется ли эффект замедления или нет
Изменена скорость анимации
Попробуйте следующее, сработало у меня в VS 2005. Это решение как для встроенного в VS2005 типа hash_map в пространстве имен stdext, так и для повышения unordered_map (предпочтительно). Удалите то, что вы не используете.
#include <boost/unordered_map.hpp>
#include <hash_map>
class HashKey
{
public:
HashKey(const std::string& key)
{
_key=key;
}
HashKey(const char* key)
{
_key=key;
}
// for boost and stdext
size_t hash() const
{
// your own hash function here
size_t h = 0;
std::string::const_iterator p, p_end;
for(p = _key.begin(), p_end = _key.end(); p != p_end; ++p)
{
h = 31 * h + (*p);
}
return h;
}
// for boost
bool operator==(const HashKey& other) const
{
return _key == other._key;
}
std::string _key;
};
// for boost
namespace boost
{
template<>
class hash<HashKey>
{
public :
std::size_t operator()(const HashKey &mc) const
{
return mc.hash();
}
};
}
// for stdext
namespace stdext
{
template<>
class hash_compare<HashKey>
{
public :
static const size_t bucket_size = 4;
static const size_t min_buckets = 8;
size_t operator()(const HashKey &mc) const
{
return mc.hash();
}
bool operator()(const HashKey &mc1, const HashKey &mc2) const
{
return (mc1._key < mc2._key);
}
};
}
int _tmain(int argc, _TCHAR* argv[])
{
{
stdext::hash_map<HashKey, int> test;
test["one"] = 1;
test["two"] = 2;
}
{
boost::unordered_map<HashKey, int> test(8); // optional default initial bucket count 8
test["one"] = 1;
test["two"] = 2;
}
return 0;
}
Чтобы использовать хеш-таблицу, вам необходимо указать хеш-функцию. Вам необходимо создать функциональный объект, который представляет функцию, которая принимает объект MyKeyObject
и возвращает size_t
. Затем вы передаете функтор в качестве второго аргумента после начального размера:
hash_map <MyKeyObject, MyData> _myDataHashMap(initial_size, YourHashFunctor());
В качестве альтернативы вы можете написать свою хеш-функцию как специализацию шаблона для функтора hash
для вашего типа; таким образом вам не нужно передавать специальную хеш-функцию.
Я не знаю, почему именно вы получаете эти ошибки. Возможно, он пытается использовать ваш объект как хэш-код или что-то в этом роде? В любом случае он не должен работать без хеш-функции. Хеш-функции заранее определены для целочисленных типов и строк.